Re: [pgsql-ru-general] Re[2]: [pgsql-ru-general] настройк - Mailing list pgsql-ru-general

From Teodor Sigaev
Subject Re: [pgsql-ru-general] Re[2]: [pgsql-ru-general] настройк
Date
Msg-id 439556AD.5080605@sigaev.ru
Whole thread Raw
In response to Re[2]: [pgsql-ru-general] настройк  (Serik <uge@pochtamt.ru>)
Responses Re: [pgsql-ru-general] Re: [pgsql-ru-general] Re[2]: [pgsql-ru-general] настройк  ("Andrey N. Oktyabrski" <ano@antora.ru>)
List pgsql-ru-general
select 'test' || coalesce(NULL, '') || '' as ret;

Serik wrote:
> Здравствуйте, Nick.
>
> Вы писали 6 декабря 2005 г., 2:58:47:
>
> NG> Serik wrote:
>
>>>Добрый день !
>>>
>>>Можно настроить PostgreSQL, чтобы запрос
>>>
>>>select 'test' || NULL || '' as ret;
>>>
>>>возвращал не пустую строку, а то, что есть ?
>
>
> NG> Имманентным свойством NULL является "распространяемость" через
> NG> выражения, то есть, любые выражения с NULL возвращают NULL. Если вы
> NG> хотите иначе -- то это будет уже не NULL, а что-то другое. Пустая
> NG> строка, например. Попробуйте сначала заменять NULL на пустую строку.
> NG> Вообще хорошо бы получше сформулировать задачу.
>
> Спасибо за ответ.
> Задача совершенно простая, в таблице есть поля "фамилия", "имя",
> "отчество".
> Я хочу чтобы запрос возвратил мне одно поле "Фамилия И.О.", а
> отчество может быть NULL, и соответственно возвращается пустая строка.
>
> Стандартной функции на проверку строки на NULL, и замену на "" не
> нашел. Написать свою ?
>

--
Teodor Sigaev                                   E-mail: teodor@sigaev.ru
                                                    WWW: http://www.sigaev.ru/

pgsql-ru-general by date:

Previous
From: Serik
Date:
Subject: Re[2]: [pgsql-ru-general] настройк
Next
From: "Andrey N. Oktyabrski"
Date:
Subject: Re: [pgsql-ru-general] Re: [pgsql-ru-general] Re[2]: [pgsql-ru-general] настройк