【问题标题】:How to rollup specific strings in a query如何在查询中汇总特定字符串
【发布时间】:2019-11-25 06:42:00
【问题描述】:

我想在特定列中合并具有重复项的行,以便列出特定项目而排除其他项目

我曾尝试使用string_agggroup_by 和自我连接,我觉得我可能只是需要一个更好的self join,但我不确定。

one  two  three four
1    1    a     NULL
2    4    b      e
3    7    c      x
3    7    c      z

我希望它看起来像这样(相同的元素保持未隔离)

one  two  three
1    1    a     NULL
2    4    b      e
3    7    c      x,z

【问题讨论】:

  • 对于 Postgres:select one, two, string_agg(four, ',') group by one, two, three
  • 我正在使用 SQL 服务器

标签: sql sql-server string-aggregation


【解决方案1】:

如果您使用的是 MySQL:

SELECT one, two, three, GROUP_CONCAT(four)
FROM table
GROUP BY one, two, three

否则,这在 RDBMS 中是一件坏事,因为这不是关系操作。 您应该在项目的客户端执行此操作。

【讨论】:

    猜你喜欢
    • 2017-03-22
    • 1970-01-01
    • 1970-01-01
    • 2021-04-18
    • 2011-02-19
    • 1970-01-01
    • 2021-12-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多