0
顶部SSRS显示列如果我有一个返回值的报告可以说8列:上的相互
Col1 Col1 Col3 Col4 Col5 Col6 Col7 Col8
有没有办法通过它来显示这样的:
Col1 Col2 Col3 Col4
Col5 Col6 Col7 Col8
总列数将是可变的,但我只想在每一行显示4。每列应只返回一个值。
顶部SSRS显示列如果我有一个返回值的报告可以说8列:上的相互
Col1 Col1 Col3 Col4 Col5 Col6 Col7 Col8
有没有办法通过它来显示这样的:
Col1 Col2 Col3 Col4
Col5 Col6 Col7 Col8
总列数将是可变的,但我只想在每一行显示4。每列应只返回一个值。
如果每个日期只显示1个字段,则可以更改SQL查询以将每个字段映射到所需的列和行。
一旦你计算出行和列的值,你可以使用这些值将数据分组到正确的位置(在我的例子中是total_sales)。
DECLARE @data TABLE
(
sale_date DATE,
total_sales INT
)
INSERT INTO @data (sale_date, total_sales)
SELECT '2/1/2016', 100
UNION SELECT '2/2/2016', 450
UNION SELECT '2/3/2016', 175
UNION SELECT '2/4/2016', 900
UNION SELECT '2/5/2016', 150
UNION SELECT '2/6/2016', 425
UNION SELECT '2/7/2016', 300
UNION SELECT '2/8/2016', 550
DECLARE @date_from DATE = '2/1/2016'
, @date_to DATE = '2/10/2016'
SELECT d.total_sales AS 'total_sales'
, CONVERT(DATE, d.sale_date) AS 'sale_date'
, (DATEDIFF(DAY, @date_from, d.sale_date) - DATEDIFF(DAY,@date_from, d.sale_date) % 4)/4 AS 'Row'
, DATEDIFF(DAY, @date_from, d.sale_date) % 4 AS 'column'
FROM @data d
WHERE d.sale_date >= @date_from
AND d.sale_date <= @date_to
有时候创建一个新矩阵来显示这些数据比试图手动改变旧矩阵中的分组要容易一些。
完美!谢谢! – user1873604
你说的“列的总数将变量”是指地图的“列”到外地标有“列”?什么会导致列数有所不同?当我在SSRS中进行报告时,通常列数是固定的,行数也是变化的。 –
它基本上是一个列组。例如,如果我创建开始日期和结束日期作为参数,并且想要从每天返回活动,如果我在1/1/16到1/10/16之间放置,则会有10列,每个日期一列。如果我把1/1到1/20放在20列。 – user1873604