【问题标题】:group_concat on sql server management studio [duplicate]sql server management studio上的group_concat [重复]
【发布时间】:2020-09-12 08:48:00
【问题描述】:

我有sql server management studio 14.0.17825.0 并想使用group_concat 功能。但是当我尝试使用时出现错误。错误是invalid column name group_concat 还有其他我可以使用的功能吗?能否提供一个示例代码可以实现group_concat的什么功能?

【问题讨论】:

    标签: sql sql-server


    【解决方案1】:

    在 SQL Server 2017+ 中,该函数被称为string_agg()

    select string_agg(col, ',') within group (order by col)
    

    在早期版本中,您使用 XML 的技巧,可能如下所示:

    select stuff( (select ',' + col
                   from t
                   for xml path ('')
                  ), 1, 1, ''
                )
    

    【讨论】:

    • 为什么我们需要within group (order by col)?是否可以使用distinctselect string_agg(distinct (col), ',')
    • 我收到一个错误'string_agg is not a recognized built in function name.
    • @user2543622 。 . .我认为这个问题解决了这些问题。
    • 这行得通,但我如何获取数据中的其他列?例如,我有两列 col1, col2,我想获取 col2 的数据,并为每个 'col1' 值连接
    • @user2543622 。 . .你会有一个不同的问题,应该作为问题提出。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-04
    • 2012-02-15
    • 1970-01-01
    • 1970-01-01
    • 2012-02-10
    • 2013-10-07
    相关资源
    最近更新 更多