连接多行给出一个不同的行

时间:2012-10-30 19:23:41

标签: sql

我的SQL语句返回以下内容

SQLID  Col1  Col2  Col3
14945  NULL  NULL  sdf
14945  NULL  xyz   NULL
14945  abc   NULL  NULL

我希望它返回

SQLID   Col1 Col2   Col3
14945   abc  xyz    sdf

请帮忙。

架构是这样的,我有一个包含SQLID的表。第二个表包含SQLID作为第一个表的FK和col1,col2和col3。目前我只是在SQLId

上加入
Select 
    t1.SQLID, t2.Col1, t2.col2, t2.col3
from
    Table1 t1 
join
    table2 t2 on t1.SQLId = t2.SQLid

1 个答案:

答案 0 :(得分:2)

编辑:如果Col1,Col2,Col3是DATETIME数据类型(根据以下注释) 你可以使用;

SELECT SQLID, MAX(ISNULL(Col1,0)) AS Col1,
        MAX(ISNULL(Col2,0)) AS Col2, MAX(ISNULL(Col3,0)) AS Col3
FROM YourTable
GROUP By SQLID