Re: [pgsql-ru-general] хранимая процедура: как вернуть NOT FOUND?

From: Dmitriy Igrishin <dmitigr(at)gmail(dot)com>
To: "Dmitry E(dot) Oboukhov" <unera(at)debian(dot)org>
Cc: pgsql-ru-general(at)postgresql(dot)org
Subject: Re: [pgsql-ru-general] хранимая процедура: как вернуть NOT FOUND?
Date: 2011-03-07 20:46:33
Message-ID: AANLkTi=n8JtHJUP2S-FDGPPP_mQu3J6Khhg4w9H-pAbh@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-ru-general

7 марта 2011 г. 23:35 пользователь Dmitry E. Oboukhov <unera(at)debian(dot)org>написал:

>
> DI> Вот и возращайте либо NULL, либо строку.
>
> NULL = одно возвращенное значение, а мне надо ноль возвращенных
> значений, например:
>
> wwm=> SELECT NULL;
> ?column?
> ----------
>
> (1 row)
>
> wwm=> SELECT NULL WHERE 0 = 1;
> ?column?
> ----------
> (0 rows)
>
>
> если функция возвращает NULL мы имеем тот же самый 1 row как если она
> заполненный row бы вернула. А как "не вернуть ничего" (по аналогии со
> вторым SELECT'ом)?
>
Такого быть не может. Функция обязана вернуть значение, даже типа void.
Если написать SELECT f() WHERE false, то функция f() просто не выполниться,
а значит и не возвратит значения.

>
> --
>
> . ''`. Dmitry E. Oboukhov
> : :’ : email: unera(at)debian(dot)org jabber://UNera(at)uvw(dot)ru
> `. `~’ GPGKey: 1024D / F8E26537 2006-11-21
> `- 1B23 D4F8 8EC0 D902 0555 E438 AB8C 00CF F8E2 6537
>

--
// Dmitriy.

In response to

Browse pgsql-ru-general by date

  From Date Subject
Next Message Dmitriy Igrishin 2011-03-07 20:47:59 Re: [pgsql-ru-general] Хранимая процедура: возврат строки разного формата
Previous Message Dmitry E. Oboukhov 2011-03-07 20:43:42 Re: Хранимая процедура: возврат строки разного формата