这是我的主要表格。我有三个列有日期。其中一些是NULL值。我想输出一些如下所示的东西。我尝试了很多,但无法得到正确的答案。如果有人可以提供帮助感谢。
a.id a.date b.id b.date c.id c.date
3 7/1/2014 11 NULL 21 NULL
5 8/1/2014 12 NULL 22 NULL
5 8/1/2014 13 NULL 22 NULL
5 8/1/2014 12 NULL 23 NULL
5 8/1/2014 13 NULL 23 NULL
6 NULL 14 06/01/2014 24 NULL
7 NULL 15 NULL 25 09/01/2014
期望输出
a.id b.id c.id date
3 11 21 07/01/2014
5 12 22 08/01/2014
5 13 22 08/01/2014
5 12 23 08/01/2014
5 13 23 08/01/2014
6 14 24 06/01/2014
7 15 25 09/01/2014
答案 0 :(得分:1)
您正在寻找coalesce
功能
select a.id,bid,c.id,
coalesce(a.date,b.date,c.date) as date
from ...
答案 1 :(得分:1)
只需使用coalesce()
:
select a.id, b.id, c.id, coalesce(a.date, b.date, c.date) as date