Обсуждение: null+число

Поиск
Список
Период
Сортировка

null+число

От
Mihail Nasedkin
Дата:
Здравствуйте, сообщество pgsql-ru-general.

У меня наверное простой вопрос.

Никак не могу понять как можно суммировать null с числом, чтобы null
воспринимался как 0.

Т.е. может есть фунцция типа isnull(column_name, 0)?

--
С уважением,
 Mihail                          mailto:m.nasedkin.perm@mail.ru


Re: null+число

От
Mihail Nasedkin
Дата:
MN> Никак не могу понять как можно суммировать null с числом, чтобы null
MN> воспринимался как 0.

MN> Т.е. может есть фунцция типа isnull(column_name, 0)?

Извиняюсь, поспешил спрашивать, когда все есть в документации
(функции coalesce, nullif)



--
С уважением,
 Mihail                          mailto:m.nasedkin.perm@mail.ru


Re: null+число

От
Teodor Sigaev
Дата:
template1=# select coalesce(null, 1)+1;
  ?column?
----------
         2
(1 row)

template1=# select coalesce(2, 1)+1;
  ?column?
----------
         3
(1 row)


У coalesce два аргумента - первый значение и  второй, что подставлять, если
значение is null.

Mihail Nasedkin wrote:
> Здравствуйте, сообщество pgsql-ru-general.
>
> У меня наверное простой вопрос.
>
> Никак не могу понять как можно суммировать null с числом, чтобы null
> воспринимался как 0.
>
> Т.е. может есть фунцция типа isnull(column_name, 0)?
>

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

Re[2]: [pgsql-ru-general] null+число

От
Mihail Nasedkin
Дата:
Спасибо, Федор.

Вы писали 26 января 2005 г., 13:26:02:

TS> template1=# select coalesce(null, 1)+1;
TS>   ?column?
TS> ----------
TS>          2
TS> (1 row)

TS> template1=# select coalesce(2, 1)+1;
TS>   ?column?
TS> ----------
TS>          3
TS> (1 row)


TS> У coalesce два аргумента - первый значение и  второй, что подставлять, если
TS> значение is null.

TS> Mihail Nasedkin wrote:
>> Здравствуйте, сообщество pgsql-ru-general.
>>
>> У меня наверное простой вопрос.
>>
>> Никак не могу понять как можно суммировать null с числом, чтобы null
>> воспринимался как 0.
>>
>> Т.е. может есть фунцция типа isnull(column_name, 0)?
>>




--
С уважением,
 Mihail                          mailto:m.nasedkin.perm@mail.ru


Re: null+число

От
Oleg Bartunov
Дата:
  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

---559023410-1082139223-1106728090=:6363
Content-Type: TEXT/PLAIN; charset=koi8-r; format=flowed
Content-Transfer-Encoding: 8BIT

On Wed, 26 Jan 2005, Mihail Nasedkin wrote:

> Здравствуйте, сообщество pgsql-ru-general.
>
> У меня наверное простой вопрос.
>
> Никак не могу понять как можно суммировать null с числом, чтобы null
> воспринимался как 0.
>
> Т.е. может есть фунцция типа isnull(column_name, 0)?

coalesce спасет тебя
http://www.pgsql.ru/db/pgsearch/index.html?q=coalesce


>
>

     Regards,
         Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83
---559023410-1082139223-1106728090=:6363--

Re[2]: [pgsql-ru-general] null+ВХЯКН

От
Mihail Nasedkin
Дата:
Спасибо, Oleg.

Вы ответили на мой вопрос 26 января 2005 г., 13:28:10:

OB> On Wed, 26 Jan 2005, Mihail Nasedkin wrote:

>> Здравствуйте, сообщество pgsql-ru-general.
>>
>> У меня наверное простой вопрос.
>>
>> Никак не могу понять как можно суммировать null с числом, чтобы null
>> воспринимался как 0.
>>
>> Т.е. может есть фунцция типа isnull(column_name, 0)?

OB> coalesce спасет тебя
OB> http://www.pgsql.ru/db/pgsearch/index.html?q=coalesce






--
С уважением,
 Mihail                          mailto:m.nasedkin.perm@mail.ru


Re: null+ч

От
"Alexander M. Pravking"
Дата:
On Wed, Jan 26, 2005 at 11:26:02AM +0300, Teodor Sigaev wrote:
> template1=# select coalesce(null, 1)+1;
>  ?column?
> ----------
>         2
> (1 row)
>
> template1=# select coalesce(2, 1)+1;
>  ?column?
> ----------
>         3
> (1 row)
>
>
> У coalesce два аргумента - первый значение и  второй, что подставлять, если
> значение is null.

На самом деле, число аргументов может быть и больше, таким образом,
coalesce возвращает первый не-NULL аргумент.

--
Fduch M. Pravking

Тест

От
"Zakharov Pavel"
Дата:
тест