2016-03-08 72 views

回答

1

您可能正在寻找一个支点查询,而不是架构变革:

SELECT * 
FROM (
    SELECT 
     OrderNumber, OptionName, OptionValue 
    FROM OrdersTable 
) AS t 
PIVOT 
(
    MAX(OptionValue) 
    FOR OptionName IN ([Drink], [Sauce]) 
) AS pvt 

参见:

+0

感谢Olivier,它工作完美,但我忘了提及原始表格中的ModifiedUtcDate列。我想要在Pivot表中获得该列,以便我可以使用该表进行增量加载。我试着在查询中添加该列,但数据透视表多次重复orderId。你能帮助吗? – Lokapedia

+0

请参阅:[在SQL Server中的两个或多个字段上的PIVOT](https://blogs.msdn.microsoft.com/kenobonn/2009/03/22/pivot-on-two-or-more-fields-in-sql -服务器/)。 –

0

只选择饮料,只选择酱汁,通过OrderNumber加入他们的行列。