sql中listagg用法_listagg是不是公开的函数

2022-10-03 13:34:32 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

跃然一笑

MySQLSELECT FieldA , GROUP_CONCAT(FieldB ORDER BY FieldB SEPARATOR ‘,’) AS FieldBs FROM TableName GROUP BY FieldA ORDER BY FieldA;Oracle&DB2SELECT FieldA , LISTAGG(FieldB, ‘,’) WITHIN GROUP (ORDER BY FieldB) AS FieldBs FROM TableName GROUP BY FieldA ORDER BY FieldA;PostgreSQLSELECT FieldA , STRING_AGG(FieldB, ‘,’ ORDER BY FieldB) AS FieldBs FROM TableName GROUP BY FieldA ORDER BY FieldA;SQLServerSQLServer≥2017&Azure SQLSELECT FieldA , STRING_AGG(FieldB, ‘,’) WITHIN GROUP (ORDER BY FieldB) AS FieldBs FROM TableName GROUP BY FieldA ORDER BY FieldA;SQLServer≤2016(包括cte以鼓励干原理) WITH CTE_TableName AS (

SELECT FieldA, FieldB FROM TableName)SELECT t0.FieldA , STUFF((

SELECT ‘,’ t1.FieldB FROM CTE_TableName t1 WHERE t1.FieldA = t0.FieldA

ORDER BY t1.FieldB FOR XML PATH(”)), 1, LEN(‘,’), ”)

AS FieldBs FROM CTE_TableName t0 GROUP BY t0.FieldA ORDER BY FieldA;SQLite排序需要CTE或子查询 WITH CTE_TableName AS (

SELECT FieldA, FieldB FROM TableName ORDER BY FieldA, FieldB)SELECT FieldA

, GROUP_CONCAT(FieldB, ‘,’) AS FieldBs FROM CTE_TableName GROUP BY FieldA ORDER BY FieldA;不订货SELECT FieldA , GROUP_CONCAT(FieldB, ‘,’) AS FieldBs FROM TableName GROUP BY FieldA ORDER BY FieldA;

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/197507.html原文链接:https://javaforall.cn

0 人点赞