我在Oracle中有一个表,其中有两列。在第一列中,有时会有重复的值对应于第二列中的其他值。如何编写仅显示第一列的唯一值和第二列的所有可能值的查询?
该表如下所示
COLUMN_1 | COLUMN_2
NUMBER_1 | 4
NUMBER_2 | 4
NUMBER_3 | 1
NUMBER_3 | 6
NUMBER_4 | 3
NUMBER_4 | 4
NUMBER_4 | 5
NUMBER_4 | 6
listagg()
如果您使用的是Oracle 11G
更高版本,则可以使用
SELECT
COLUMN_1,
LISTAGG(COLUMN_2, '|') WITHIN GROUP (ORDER BY COLUMN_2) "ListValues"
FROM table1
GROUP BY COLUMN_1
否则,请参见此链接以获取较低版本的替代方法
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句