One-based Indexes are Cra
Yesterday, I imported 88,000 numbers identified with a reference of the format YYYYMMReferenceCurrency
Which of the following is correct:
update table set val = '201309' + substring( val, 6, len(val) - 6 )
update table set val = '201309' + substring( val, 7, len(val) - 7 )
I went for the second one, and got values like 201309GrossPremiumGB. Total fail.
It was a trick question. The answer is of course:
update table set val= '201309' + substring( val, 7, len(val) - 6 )
To replace the first six characters needs a value of 6 and a value of 7. Huh?
I prefer zero-based indexes. I know this is mainly habit, having started in C all those years ago. I like for( i = 0; i < len; i++ ) but it's not much better than for( i = 1; i <= len; i++ ) so that doesn't persuade 1-based people. I wonder whether yesterday's example might change their minds.