Вернуть другое значение, если строка не существует - PullRequest
0 голосов
/ 04 августа 2009

В таблице базы данных со структурой, подобной этой:

Таблица 1

Name | Id
 A     1
 B     2

Таблица 2

Table1's ID | IntValue
     1           11
     2           66

теперь есть запрос, который объединяет две таблицы и выдает что-то вроде

A | 11
B | 66

но проблема в том, что когда, скажем, строка (A, 1) удаляется из таблицы1, запрос выводит

  | 11
B | 66

поэтому вместо записи A он оставляет его нулевым, поскольку строка не существует.

У меня такой вопрос: вместо того, чтобы оставить его пустым, есть ли возможность заставить его написать "Item Inexisting" или что-то в этом роде?

Моя база данных - Firebird 2.1.2

1 Ответ

3 голосов
/ 04 августа 2009
SELECT  COALESCE(t1.name, 'Item nonexistent'), t2.intValue
FROM    table2 t2
LEFT OUTER JOIN
        table1 t1
ON      t1.id = t2.id
...