我有一个名为nasdaq_transactions的表,如下所示
Ticker Close Date
GOOG 1195.06 08/15/2018
AAPL 215.15 08/15/2018
MSFT 104.56 08/15/2018
GOOG 1198.11 08/16/2018
AAPL 216.1 08/16/2018
MSFT 105.1 08/16/2018
GOOG 1200.96 08/17/2018
AAPL 217.58 08/17/2018
MSFT 107.58 08/17/2018
想要构建一个提供输出的查询
Ticker 08/15/2018 08/16/2018 08/17/2018
GOOG 1196.06 1198.11 1200.96
AAPL 215.15 216.1 217.58
MSFT 104.56 105.1 107.58
答案 0 :(得分:0)
有几种方法可以将数据从多行转换为列。
在SQL Server中,您可以使用 PIVOT 函数将数据从行转换为列:
select * from
(
select Ticker, Date
from nasdaq_transactions
)
pivot
(
max(value)
for columnname in ('08/15/2018', '08/16/2018', '08/17/2018')
) piv;
我给了你一个示例代码。请参考并相应地应用。