值我有这样一个简单的查询..透视 - SQL - 从子查询
USE AdventureWorks;
GO
SELECT DaysToManufacture, AVG(StandardCost) AS AverageCost
FROM Production.Product
GROUP BY DaysToManufacture;
DaysToManufacture AverageCost
0 5.0885
1 223.88
2 359.1082
4 949.4105
一个简单的旋转给我
SELECT 'AverageCost' AS Cost_Sorted_By_Production_Days,
[0], [1], [2], [3], [4]
FROM
(SELECT DaysToManufacture, StandardCost
FROM Production.Product) AS SourceTable
PIVOT
(
AVG(StandardCost)
FOR DaysToManufacture IN ([0], [1], [2], [3], [4])
) AS PivotTable;
给我
Cost_Sorted_By_Production_Days 0 1 2 3 4
AverageCost 5.0885 223.88 359.1082 NULL 949.4105
但值在枢轴查询硬编码..我想从一个子查询中获得这些值..
select DaysToManufacture FROM Production.Product GROUP BY DaysToManufacture;
但是,pivot不让我从子查询中获取值,除了编写动态生成的查询之外,有没有其他方法可以做到这一点?
感谢艾哈迈德。我认为Coalesce的想法对我而言非常酷。即使这不是一个直接的答案,我给你对此的投票;) –