sql - 将评论行加入单行
问题描述
我的查询是在序列行中列出注释。我希望将它们组合成一个评论列,而不是一个 PO 有多行。这是我现在的查询:
SELECT PO,
SEQUENCE_NUMBER,
COMMENT_LINE
FROM Database
哪个正在返回:
采购订单 | 序列号 | 评论行 |
---|---|---|
8582959 | 1 | 评论第 1 行 |
8582959 | 2 | 评论第 2 行 |
8582960 | 1 | 评论第 1 行 |
我希望它返回两个注释行,它们之间用','连接起来,如下所示:
采购订单 | 评论行 |
---|---|
8582959 | 评论第 1 行,评论第 2 行 |
8582960 | 评论第 1 行 |
我尝试使用 CONCAT,但由于它们位于同一列中,因此无法弄清楚如何让这些行加入。我认为也许内部连接会起作用,但我从未使用过,也不太确定如何格式化。非常感谢帮忙。
解决方案
我不知道它是否在 Teradata 上可用,但您可以尝试使用string_agg()
聚合函数:
SELECT
po,
STRING_AGG(comment_line, ', ')
FROM your_table
GROUP BY po;
推荐阅读
- python - 使用 Gensim 将余弦距离缩放到 0-1
- flutter - 如何将 .gif 放入真正的闪屏中
- php - 我如何总是像这样将这个数字 5.53 舍入:PHP 中的 5.55?
- javascript - 如何防止不同窗口之间重复数据?
- spring - SpringBoot 中 @Async 注释的组件/集成测试失败
- javascript - 如何在 Blazor SignalR 中发送带有文本的表情符号
- hashicorp-vault - 仅列出路径中的键
- c# - 如何处理第三方代码中的死锁
- xcode - 如何更改 Mac 应用程序上的应用程序支持路径?
- chisel - Chisel:如何在 ChiselScalatestTester 中等待信号断言?