Re: CASE in where statement. BUG ??

Поиск
Список
Период
Сортировка
От Alexander Litvinov
Тема Re: CASE in where statement. BUG ??
Дата
Msg-id 200312191455.32740.lan@ac-sw.com
обсуждение исходный текст
Ответ на CASE in where statement. BUG ??  (Marek Lewczuk <newsy@lewczuk.com>)
Ответы Re: CASE in where statement. BUG ??  (Marek Lewczuk <newsy@lewczuk.com>)
Список pgsql-general
This is normaol behavior.

> I belive that I have found a bug - or maybe it was done on purpose. Have
> a look at this query:
>
>
> SELECT integer_field FROM bugtable WHERE (CASE WHEN '' <> '' THEN
> integer_field = '' ELSE integer_field = 0 END);
> Result: ERROR:  invalid input syntax for integer: ""

Here CASE have int type and you are trying to cast '' to int. Error.

>
>
> SELECT text_field FROM bugtable WHERE (CASE WHEN '' <> '' THEN
> text_field = '' ELSE text_field = '1' END);
> Result: 1 rows fetched (0,02 sec)

Here CASE have text type. Everything is fine.


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

Предыдущее
От: Marek Lewczuk
Дата:
Сообщение: CASE in where statement. BUG ??
Следующее
От: Marek Lewczuk
Дата:
Сообщение: Re: CASE in where statement. BUG ??