任何可用的列都将传递给该
PIVOT函数,因此除了聚合的列之外,所有隐含的分组都被隐式分组,因此,由于
GrpID和
Description存在,并且不包含分组,因此,每个组合的一行这些。您需要使用子查询来限制传递给数据透视函数的列:
SELECt pvt.CustomerID, pvt.Sales, pvt.[Cost of Sales], pvt.[Labour Costs], pvt.[Overheads]FROM ( SELECt CustomerID, nominalgroupname, Value FROM trialbalancegrouping ) AS t PIVOT ( SUM(Value) FOR nominalgroupname IN ( [Sales],[Cost of Sales], [Labour Costs],[Overheads] ) ) AS pvt;



