четверг, 19 апреля 2012 г.

SQL - Как выбрать то, что не существует

Столкнулся с проблемой. Положим, есть у нас таблица, DUMMY_TABLE.
Каким образом  выбрать поле из таблицы по ИД, или же строку 'NOT EXISTS' если такой записи не существует? При этом использовать можно только SQL, никакого процедурного программирования.

В результате родился такой запрос:


SELECT ID from DUMMY_TABLE
  where id=1
UNION
SELECT
 'NOT EXISTS' from DUAL WHERE NOT EXISTS(
    select ID from DUMMY_TABLE WHERE ID=1)

Работает! Вот как бы его только поэлегантнее представить?

Комментариев нет:

Отправить комментарий