【发布时间】:2016-10-28 02:55:45
【问题描述】:
尝试为本季度几个月的 SSRS 报告创建硬编码数据集。我有这个:
SELECT CASE @Quarter
WHEN 'Q1' THEN (
SELECT 'January' as months, '01' as month_number
UNION ALL
SELECT 'February','02'
UNION ALL
SELECT 'March', '03')
WHEN 'Q2' THEN (
SELECT 'April' as months, '04' as month_number
UNION ALL
SELECT 'May','05'
UNION ALL
SELECT 'June', '06')
WHEN 'Q3' THEN (
SELECT 'July' as months, '07' as month_number
UNION ALL
SELECT 'August','08'
UNION ALL
SELECT 'September', '09')
ELSE (
SELECT 'October' as months, '10' as month_number
UNION ALL
SELECT 'November','11'
UNION ALL
SELECT 'December', '12')
END
但是我收到了这个错误:
选择列表中只能指定一个表达式,当 EXISTS 没有引入子查询。
之前我尝试过使用表变量:
DECLARE @Months TABLE (months VARCHAR(9), month_start VARCHAR(2));
IF @Quarter = 'Q1'
INSERT INTO @Months VALUES ('January','01'), ('February','02'), ('March','03')
ELSE IF @Quarter = 'Q2'
INSERT INTO @Months VALUES ('April','04'), ('May','05'), ('June','06')
ELSE IF @Quarter = 'Q3'
INSERT INTO @Months VALUES ('July','07'), ('August','08'), ('September','09')
ELSE
INSERT INTO @Months VALUES ('October','10'), ('November','11'), ('December','12')
Select * FROM @Months
然后我得到错误:
不支持 Declare SQL 构造或语句。
有没有人知道如何让它在 SSRS 数据集中工作?
【问题讨论】:
标签: sql-server reporting-services sql-server-2012 ssrs-2012