查询以制作记录组

时间:2012-07-31 08:40:37

标签: sql sql-server-2008-r2

我有一张包含以下数据的表格:

                 TableA
======================================
Name      colB       colM        colP 
======================================
T045      B          Null        Null
T045      Null       M           Null
T045      Null       Null        P
T046      Null       M           Null
T046      B          Null        Null
T047      Null       Null        P
T047      Null       M           Null
T048      B          Null        Null

我想要一个查询来创建如下结果:

    ======================================
    Name      colB       colM        colP 
    ======================================
    T045      B          M           P
    T046      B          M           Null
    T047      Null       M           P
    T048      B          Null        Null

有没有人有任何想法怎么做?

谢谢

1 个答案:

答案 0 :(得分:2)

是。您需要GROUP BY语法

select name, max(colb), max(colm), max(colp)
from table
group by name