Re: [GENERAL] Where is IFNULL?

Поиск
Список
Период
Сортировка
От Sascha Ziemann
Тема Re: [GENERAL] Where is IFNULL?
Дата
Msg-id m3ogc2e88q.fsf@intra.do.khs-ag.de
обсуждение исходный текст
Ответ на Re: [GENERAL] Where is IFNULL?  ("Gene Selkov Jr." <selkovjr@selkovjr.xnet.com>)
Список pgsql-general
"Gene Selkov Jr." <selkovjr@selkovjr.xnet.com>:

| > the user manual describes the function IFNULL on page 38, but when I
| > try to use it I get the following error:
| >
| >   users=> select ifnull (NULL, 'nix');
| >   ERROR:  No such function 'ifnull' with the specified attributes
|
| The manual seems to be obsolete. The related functions are named
| nullvalue and nonnullvalue, but neither takes more than one argument.

IFNULL isn't syntactic suguar.  It is like C's "1 ? 1 : 0".

| > Or does anybody know a simple way to concatenate strings, which can be
| > NULL?
|
| Don't know the answer to this, but it appears to be wrong not to
| ignore NULLs in concatenation.

That is the way Postgresql works:

users=> select 'tach' || NULL;
ERROR:  parser: parse error at or near ";"

users=> create function cat (text,text) returns text as 'begin return $1 || $2; end;' language 'plpgsql';
CREATE
users=> select cat ('tach', NULL);
ERROR:  typeidTypeRelid: Invalid type - oid = 0

| Why not trust this job to your client-side
| code?

Because I do not write that code and because my computer isn't
religious enough to trust anybody ;-)

Sascha

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

Предыдущее
От: Peter Eisentraut
Дата:
Сообщение: Re: [GENERAL] viewing dbs
Следующее
От: Franck Martin
Дата:
Сообщение: ODBC Drivers for Win