我有数据在SQL Server 2008中的表看起来像这样:SQL Server 2008的透视查询
我要转动它看起来像这样:
基本上我想对ReadTime和Coater进行分组,然后在DataType列上旋转。有人可以帮我用T-SQL来做到这一点吗?
我有数据在SQL Server 2008中的表看起来像这样:SQL Server 2008的透视查询
我要转动它看起来像这样:
基本上我想对ReadTime和Coater进行分组,然后在DataType列上旋转。有人可以帮我用T-SQL来做到这一点吗?
也许这将帮助:
测试数据:
DECLARE @tbl TABLE
(
ReadTime DATETIME,
Coater VARCHAR(100),
Value FLOAT,
DateType VARCHAR(100)
)
INSERT INTO @tbl VALUES('2012-10-01 13:28:01','PBG11A-COATER',1,'FCDAOpside473')
INSERT INTO @tbl VALUES('2012-10-01 13:28:01','PBG11A-COATER',1,'FCDABackside473')
INSERT INTO @tbl VALUES('2012-10-01 13:28:01','PBG11A-COATER',0,'FCDAOpside472')
INSERT INTO @tbl VALUES('2012-10-01 13:28:01','PBG11A-COATER',0.9,'FCDABackside472')
INSERT INTO @tbl VALUES('2012-10-01 13:28:01','PBG11B-COATER',1,'FCDAOpside473')
INSERT INTO @tbl VALUES('2012-10-01 13:28:01','PBG11B-COATER',2,'FCDABackside472')
INSERT INTO @tbl VALUES('2012-10-01 13:28:01','PBG11B-COATER',2.9,'FCDAOpside472')
INSERT INTO @tbl VALUES('2012-10-01 13:28:01','PBG11B-COATER',0,'FCDABackside473')
INSERT INTO @tbl VALUES('2012-10-01 13:28:41','PBG11A-COATER',1,'FCDAOpside473')
INSERT INTO @tbl VALUES('2012-10-01 13:28:41','PBG11A-COATER',1,'FCDABackside473')
INSERT INTO @tbl VALUES('2012-10-01 13:28:41','PBG11A-COATER',0,'FCDAOpside472')
INSERT INTO @tbl VALUES('2012-10-01 13:28:41','PBG11A-COATER',0.9,'FCDABackside472')
INSERT INTO @tbl VALUES('2012-10-01 13:28:41','PBG11B-COATER',1,'FCDAOpside473')
INSERT INTO @tbl VALUES('2012-10-01 13:28:41','PBG11B-COATER',2,'FCDABackside472')
INSERT INTO @tbl VALUES('2012-10-01 13:28:41','PBG11B-COATER',2.9,'FCDAOpside472')
INSERT INTO @tbl VALUES('2012-10-01 13:28:41','PBG11B-COATER',0,'FCDABackside473')
查询:
SELECT
*
FROM
(
SELECT
ReadTime,
Coater,
DateType,
Value
FROM @tbl AS tbl
) AS SourceTable
PIVOT
(
MIN(Value)
FOR DateType IN
(
[FCDAOpside472],
[FCDAOpside473],
[FCDABackside472],
[FCDABackside473]
)
)AS PivotTable
ORDER BY
ReadTime
你真的想让我混乱这个问题与查询的所有迭代我试过了?那只会让你知道我已经尝试了一些东西。 – Hosea146 2012-01-18 15:41:08
最成功的呢? – 2012-01-18 15:43:35
@ Hosea146实际上通过显示您尝试过的查询来帮助社区了解是否改变您所做的工作会给您想要的结果。所以这不是浪费双方的时间。 – Taryn 2012-01-18 15:44:11