PostgreSQL Bugs

Collected from the PG bugs email list.

Bug ID15971
PG Version10.4
OSLinux
Opened2019-08-21 07:02:30+00
Reported byVIMAL VICTOR B
StatusNew

Body of first available message related to this bug follows.

The following bug has been logged on the website:

Bug reference:      15971
Logged by:          VIMAL VICTOR B
Email address:      (redacted)
PostgreSQL version: 10.4
Operating system:   Linux
Description:        

Hi,

select substr('abcdef',1,2) val1, substr('abcdef',0,2) val2,
substr('abcdef',-1,2) val3;

The above query in Postgres returns expected result for val1 ('ab') but for
val2 and val3, it returns 'a' and '' respectively. Oracle and most of other
RDBMS systems would return 'ab' for val1 and val2. When the start position
is -ve, then the start position will be considered from end of input string.
The start position can be considered either as 0 or 1 and substring from
that position can be returned by considering the max length of the input
string, which is logically correct. But when -ve value given for start
position and returning empty string '', which does not seem logically
correct. Kindly consider this case and let me know your thoughts.

Regards,
Vimal

Messages

DateAuthorSubject
2019-08-21 07:02:30+00PG Bug reporting formBUG #15971: Behaviour of SUBSTR function depending on its arguments
2019-08-21 09:09:52+00Ashutosh SharmaRe: BUG #15971: Behaviour of SUBSTR function depending on its arguments
2019-08-21 10:26:30+00Thomas KellererRe: BUG #15971: Behaviour of SUBSTR function depending on its arguments
2019-08-21 10:44:31+00Pavel StehuleRe: BUG #15971: Behaviour of SUBSTR function depending on its arguments
2019-08-21 13:45:13+00Tom LaneRe: BUG #15971: Behaviour of SUBSTR function depending on its arguments
2019-08-21 14:07:09+00Ashutosh SharmaRe: BUG #15971: Behaviour of SUBSTR function depending on its arguments