在单行 SSRS 表达式中组合多个行值

Combining Multiple row values in a single line SSRS expression

我的 SQL 输出中有三行,当我想在 运行 SSRS 报告时查看它们时,我想在一行中查看它们。

源数据

这两列是我在 SSRS 报告中的 DataSet1 的一部分。

我在 SSRS 报告(表达式)中期望的输出:2017 年第 1 学期、2017 年第 2 学期、2017 年第 3 学期

有人可以帮忙吗?

检查这个 https://docs.microsoft.com/en-us/sql/t-sql/functions/stuff-transact-sql

SELECT STUFF(
             (SELECT ',' + Semesters 
              FROM table t1
              FOR XML PATH (''))
             , 1, 1, '') AS Semesters from table t2

是的,您可以使用 STUFF() 函数和 xml path 方法

SELECT DISTINCT
       Semester = STUFF(
                       (
                           SELECT ','+CONCAT(Semester, ' ', [year])
                           FROM <table> FOR XML PATH('')
                       ), 1, 1, '')
FROM <table>;

更新: 您可以使用 CONCAT() 函数组合 year & Semester

结果:

Semester
Semester 1 2017,Semester 2 2017,Semester 3 2017