是否可以按多列
按组将多个行值返回到列中with distinct。
如果我的表是:
QUantityTypeID数量OrderDate CompanyID TypeName
-------------- -------- ----------- -------------- - ----------
1 7.0000 2013-09-02 1销售
1 4.0000 2013-09-15 1销售
1 1.0000 2013-09-16 1销售
1 1.0000 2013-09-16 2销售
2 1.0000 2013-08-25 1销售
3 1.0000 2013-08-25 1销售
4 1.0000 2013-09-11 1销售
选择应返回:
OrderDate 1 2 3 4 CompanyID TypeName
----------- ----- ----- ------ ------ -------------- - ----------
2013-08-25 NULL 1.0000 1.0000 NULL 1销售
2013-09-02 7.0000 NULL NULL NULL 1销售
2013-09-11 NULL NULL NULL 1.0000 1销售
2013-09-15 4.0000 NULL NULL NULL 1销售
2013-09-16 1.0000 NULL NULL NULL 1销售
2013-09-16 1.0000 NULL NULL NULL 2销售
答案 0 :(得分:2)
您需要透视数据。
SELECT
OrderDate, [1], [2], [3], [4], CompanyID, TypeName
FROM test
PIVOT
(
MAX(Quantity)
FOR QUantityTypeID IN ([1], [2], [3], [4])
) as p
<强> SQL FIDDLE DEMO 强>