SQL Pivot和格式化Grid

时间:2010-02-12 16:12:42

标签: .net asp.net sql-server sql-server-2005 tsql

我使用pivot来获取格式

的数据
Store  department  Employee     Q1         Q2         Q3
----------------------------------------------------------
abc      d1         u1          1          Null       Null
abc      d1         u1          Null       3          Null
abc      d1         u1          Null       Null       2     
abc      d1         u2          1          Null       Null
abc      d1         u2          Null       3          Null
abc      d1         u2          Null       Null       2   
abc      d2         u1          1          Null       Null
abc      d2         u1          Null       3          Null
abc      d2         u1          Null       Null       2    

我想将它们分组为

Employee             Q1         Q2         q3
------------------------------------------------------------------
u1                   1           3        2
u2                   1           3        2

如何使用sql查询实现此目的,或者可以使用pivot

直接执行此操作

2 个答案:

答案 0 :(得分:0)

假设PIVOTED是产生您显示的数据的表或查询

select employee, avg(Q1) as Q1, avg(Q2) as Q2, avg(Q3) as Q3
from PIVOTED
group by employee

当然avg不是正确的分组(min?max?)。告诉我们更多。

答案 1 :(得分:0)

我更改了我的查询,以便我无需分组并获得所需的结果