【发布时间】:2021-06-21 22:07:12
【问题描述】:
select * from
(
SELECT datename( Month,soh.OrderDate)[Month], sd.OrderQty as orderQty
from Sales.SalesOrderHeader soh
join Sales.SalesOrderDetail sd
on soh.SalesOrderID = sd.SalesOrderID
)t
pivot(
sum(orderQty)
for [month] in ([january],[february],[march],[april],[may],[june],[july],[august],[september],[october],[november],[december]) )as pivot_table
此查询根据月份给出 TotalOrderQuantity,但我必须按条件过滤: SUM(sd.OrderQty)>50
我没有 Pivoting 的查询是这样的:
SELECT datename( Month,soh.OrderDate)[Month], SUM(sd.OrderQty) as orderQty
from Sales.SalesOrderHeader soh
join Sales.SalesOrderDetail sd
on soh.SalesOrderID = sd.SalesOrderID
group by datename( Month,soh.OrderDate)
having SUM(sd.OrderQty)>50
【问题讨论】:
-
您的查询有什么问题?
标签: sql sql-server tsql pivot case