BEGIN
DECLARE @date DATETIME
SET @date = CAST('2015-01-01' AS DATE)
SELECT * FROM
(
SELECT SpotMetal
,OpenPrice
FROM PriceHistory
WHERE spotdate = @date
) t
PIVOT(
SUM(OpenPrice)
FOR SpotMetal IN (
[Gold],
[Silver])
) AS pivot_table
END
BEGIN
DECLARE @date DATETIME
SET @date = CAST('2015-01-01' AS DATE)
SELECT * FROM
(
SELECT SpotMetal
,OpenPrice
FROM PriceHistory
WHERE spotdate = @date
) t
PIVOT(
SUM(OpenPrice)
FOR SpotMetal IN (
[Gold],
[Silver])
) AS pivot_table
END
BEGIN
DECLARE @date DATETIME
SET @date = CAST(GETDATE() AS DATE)
SELECT *
FROM (SELECT * FROM [dbo].[PriceHistory] WHERE [SpotDate] = @DATE) M
PIVOT (SUM([OpenPrice] FOR [SpotMetal] IN ('Gold','Silver'))
PIVOT TABLE;
END
You can try to use PIVOT, it should work:
BEGIN
DECLARE @date DATETIME
SET @date = CAST(GETDATE() AS DATE)
SELECT *
FROM (SELECT * FROM [dbo].[PriceHistory] WHERE [SpotDate] = @DATE) M
PIVOT (SUM([OpenPrice] FOR [SpotMetal] IN ('Gold','Silver'))
PIVOT TABLE;
END
发布评论
评论(2)
您可以尝试使用
Pivot
,它应该有效:You can try to use
PIVOT
, it should work: