to_char and '=' weirdness

Поиск
Список
Период
Сортировка
От Frank Joerdens
Тема to_char and '=' weirdness
Дата
Msg-id 20020808133300.A15630@superfly.archi-me-des.de
обсуждение исходный текст
Ответы Re: to_char and '=' weirdness  (Ludwig Lim <lud_nowhere_man@yahoo.com>)
Список pgsql-sql
German area codes from the former east all have a leading zero. As I
store area codes as integers, I use to_char to find those with a leading
zero, as in

select * from adressen where to_char(plz, '00000') like '%04109%';

(this would be Leipzig)

What I don't understand is why something like

select * from adressen where to_char(plz, '00000') = '04109';

will yield 0 rows. If I do

archi=# select to_char(plz, '00000') from adressen where
archi-# to_char(plz, '00000') like '%04109%';

I get:
to_char
--------- 04109 04109 04109 04109 04109 04109 04109 04109 04109 04109 04109 04109 04109 04109 04109
(15 rows)

(i.e. my database contains 15 addresses from Leipzig)

which would appear to indicate that to_char actually yields the string
'04109'. Why doesn't the '=' operator work then?

Regards, Frank


В списке pgsql-sql по дате отправления:

Предыдущее
От: Richard Huxton
Дата:
Сообщение: Re: Effective usage without unique key -- suggestion
Следующее
От: Ludwig Lim
Дата:
Сообщение: Re: to_char and '=' weirdness