【发布时间】:2018-10-21 04:43:38
【问题描述】:
我的查询有问题,我正在尝试使用来自 SQL 的数据来做一个数据透视表,我想总结一个表中自 2000 年以来所有年份的数字。
这是我的查询
SELECT
*
FROM
(SELECT
Vendor_code, Vendor_name, Ord_date, SubTot,
DateRecieved, CurrencyCode, YearReceived
FROM
[BL_CUSTOM PO HISTORY SUMMARY]) AS S
PIVOT
(SUM(S.SubTot)
FOR s.YearRecived IN (SELECT STUFF((SELECT ', ' + cast(year as VARCHAR(10)) FROM [BL_CUSTOM YEAR COUNT] FOR XML PATH('')),1,1,'')) ) as pvt
我收到以下错误:
消息 156,第 15 级,状态 1,第 33 行
关键字“SELECT”附近的语法不正确。消息 102,第 15 级,状态 1,第 33 行
')' 附近的语法不正确。
【问题讨论】:
-
那行不通。您需要使用动态 SQL 构造查询。
-
编辑您的问题并提供示例数据和所需结果。
-
你为什么要塞岁月? IN 只读取匹配的行和一个实体...
标签: sql-server pivot