SQL将多行合并为一行

时间:2015-12-16 09:00:38

标签: sql sql-server reporting-services

我如何结合这些?我希望它分为1行,项目的总和为10.组合不是显示的所有行的总和。

ItemID  Name    Discription   ENHET1    ENHET2  ENHET3  SUM 
1       Adel        CD        NULL      NULL    NULL    10
1       Adel        CD        NULL      X       NULL    10
1       Adel        CD        X         NULL    NULL    10

可替换地:

ItemID  Name    Discription   ENHET1    ENHET2  ENHET3   
1       Adel        CD        NULL      NULL    NULL
1       Adel        CD        NULL      X       NULL    
1       Adel        CD        X         NULL    NULL

我可以分别加入这笔钱吗?

期望的结果:

ItemID  Name    Discription   ENHET1    ENHET2  ENHET3  SUM 
1       Adel        CD        X         X       NULL    10

1 个答案:

答案 0 :(得分:1)

奇怪的表格。但是,您可以简单地在列上聚合并使用MIN或MAX:

select 
  itemid, 
  min(name), min(discription), min(enhet1), min(enhet2), min(enhet3), min("sum")
from mytable
group by itemid;