why don't string function work in WHERE clause?

Started by Dragan Maticabout 23 years ago2 messagesgeneral
Jump to latest
#1Dragan Matic
gekko@eunet.yu

Here's a sample:

select column1 from table1 where lower(column1) = 'some_string'

will not give me any results although column1 (defined as char[50]) has
values like
'Some_string' or 'SOME_STRING'

if for instance I say something like:

select lower(column1) from table1 where column1 = 'SOME_STRING'

then it returns 'some_string' correctly. The same thing happens with
'upper' and similar functions. Why don't they work when they are in
WHERE clause?

Dragan Matic

#2Dennis Gearon
gearond@cvc.net
In reply to: Dragan Matic (#1)
Re: why don't string function work in WHERE clause?

try
select column1 from table1 where trim( lower(column1) ) = 'some_string'

As someone in the archives has said, char is evil. And varchar is your friend.

Dragan Matic wrote:

Show quoted text

Here's a sample:

select column1 from table1 where lower(column1) = 'some_string'

will not give me any results although column1 (defined as char[50]) has
values like
'Some_string' or 'SOME_STRING'

if for instance I say something like:

select lower(column1) from table1 where column1 = 'SOME_STRING'

then it returns 'some_string' correctly. The same thing happens with
'upper' and similar functions. Why don't they work when they are in
WHERE clause?

Dragan Matic

---------------------------(end of broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to majordomo@postgresql.org so that your
message can get through to the mailing list cleanly