The documentation for (or implementation of) SUBSTR(s,len) is wrong
-------------------------------------------------------------------
Key: DERBY-1703
URL: http://issues.apache.org/jira/browse/DERBY-1703
Project: Derby
Issue Type: Bug
Components: Documentation
Affects Versions: 10.1.3.1
Reporter: Dyre Tjeldvoll
Priority: Minor
Fix For: 10.3.0.0
The latest alpha manuals say:
"If startPosition is positive, it refers to position from the start of the
source expression (counting the first character as 1). If startPosition is
negative, it is the position from the end of the source."
But when I try to use substr with a negative starting position, I get:
$ java org.apache.derby.tools.ij repro.sql
ij version 10.2
ij> connect 'jdbc:derby:/home/dt136804/repro;create=true;territory=en_US';
ij> create table t1(c1 varchar(128));
0 rows inserted/updated/deleted
ij> insert into t1 values ('The dog ate my homework');
1 row inserted/updated/deleted
ij> select substr(c1,-1,8) from t1;
1
--------
ERROR 22011: The second or third argument of the SUBSTR function is out of
range.
and not 'homework' as I would expect.
The SQL standard (2003) does not seem to say anything about negative starting
positions...
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira