The following bug has been logged online:

Bug reference:      4999
Logged by:          Brian Ceccarelli
Email address:      cecca...@talussoftware.com
PostgreSQL version: 8.4.0 to 8.2.13
Operating system:   Linux and XP
Description:        select 'a' < 'A' is true, but should be false . . .
Details: 

since the < and > comparison operators seem to be case insensitive:

select 'a' < 'Z';    -- true
select 'a' < 'z';    -- true
select 'A' < 'Z';    -- true
select 'A' < 'z';    -- true

select 'z' < 'A';    -- false
select 'z' < 'a';    -- false
select 'Z' < 'A';    -- false
select 'Z' < 'a';    -- false

Any case A is < any case Z implies case-insensitive compare.    Which would
imply that 'a' = 'A', but 'a' < 'A' is true.

- - -

The operator equals is case sensitive.
The operator < and > are case-insensitive.  
This is not consistent.

Most of the time, operator < and > are case-insenstive, until you compare
the upper and lower cases of the same letter.

-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

Reply via email to