在表查找上显示默认值

时间:2015-04-16 11:07:44

标签: sql join

我有两张桌子:

t1
 code

description_of_t1_code
 code
 description

如果我将这些表加入以仅显示描述,则可能会发生这种情况 目前还没有对代码的描述。 如果没有描述,是否可以显示任何默认描述,包括代码?

e.g:

t1
===
r
g
x

description_of_t1_code
======================
  r, red
  g, green

output:
=======
 red
 green
 unknown color(x)

其中"未知颜色(x)"是默认值。

谢谢!

2 个答案:

答案 0 :(得分:3)

COALESCE将返回第一个非空值。 因此,如果描述为null,则使用CONCAT构建包含代码

的字符串
SELECT COALESCE(t1.descrition, CONCAT('unknown color(', t1.code, ')'))
AS description 
FROM t1 
LEFT OUTER JOIN description_of_t1_code t2 ON t1.code = t2.code

答案 1 :(得分:1)

coalesce()替换值

select coalesce(t1.descrition,'**unknown color('+t.code+') **') as description 
from t left outer join description_of_t1_code t1 on t.code= t1.code