Thread: BUG #4416: Between operator is not working as expected

BUG #4416: Between operator is not working as expected

From
"Murali"
Date:
The following bug has been logged online:

Bug reference:      4416
Logged by:          Murali
Email address:      muralidoss@rediffmail.com
PostgreSQL version: 8.2.6
Operating system:   Linux
Description:        Between operator is not working as expected
Details:

Actually sql works fine in solaris with 8.2.5 postgresql version but same
sql query is not working in linux.

fyi...both the database in linux and solaris are having similar structure
and data too.

Here is the query i am try to execute

select * from table1 where col1 between 'SM' and 'SM~';

Please guide me

Re: BUG #4416: Between operator is not working as expected

From
Stephan Szabo
Date:
On Sat, 13 Sep 2008, Murali wrote:

>
> The following bug has been logged online:
>
> Bug reference:      4416
> Logged by:          Murali
> Email address:      muralidoss@rediffmail.com
> PostgreSQL version: 8.2.6
> Operating system:   Linux
> Description:        Between operator is not working as expected
> Details:
>
> Actually sql works fine in solaris with 8.2.5 postgresql version but same
> sql query is not working in linux.
>
> fyi...both the database in linux and solaris are having similar structure
> and data too.
>
> Here is the query i am try to execute
>
> select * from table1 where col1 between 'SM' and 'SM~';
>
> Please guide me

My guess would be that the behavior of the collations on the two machines
are different. It looks like you're expecting "C" style byte order
comparisons, but your linux box probably is using a different collation.
What does "show LC_COLLATE;" give you from psql to both databases?