当行不存在时返回另一个值

时间:2009-08-04 14:40:20

标签: sql row firebird

在具有如下结构的数据库表中:

表1

Name | Id
 A     1
 B     2

表2

Table1's ID | IntValue
     1           11
     2           66

现在,有一个查询连接2个表并输出类似

的内容
A | 11
B | 66

但问题是,当我们说从表1中删除行(A,1)时,查询输出

  | 11
B | 66

所以不是写A而是将它留空,因为该行不存在。

我的问题是:有没有选择让它写成“Item Inexistent”或smth?

我的数据库是Firebird 2.1.2

1 个答案:

答案 0 :(得分:3)

SELECT  COALESCE(t1.name, 'Item nonexistent'), t2.intValue
FROM    table2 t2
LEFT OUTER JOIN
        table1 t1
ON      t1.id = t2.id