SQL Pivot函数用于对行进行分组

时间:2014-05-19 01:13:42

标签: sql sql-server pivot pivot-table

我试图使用PIVOT转置表格。 这是我目前的代码:

select distinct to_date,[syst1],[syst2],[syst3]
from MyTable
pivot
(
    count(systems)
    for systems
    in ([syst1],[syst2],[syst3])

)
as PivotTable
order by to_date

这是我得到的结果: enter image description here

我想要的是将行33和34组合在一起,将35& 36组合在一起,将37和38组合在一起 所以他们看起来像这样:

enter image description here

1 个答案:

答案 0 :(得分:0)

你的支点应该做你想做的事。 。 。除非to_date有时间组件。这样可以解决问题吗?

select to_date, [syst1], [syst2], [syst3]
from (select cast(to_date as date) as to_date, systems
      from MyTable
     ) mt
pivot (count(systems)
       for systems in ([syst1], [syst2], [syst3])
      ) as PivotTable
order by to_date;