时间:2021-07-01 10:21:17 帮助过:1人阅读
SELECT A, LTRIM(MAX(SYS_CONNECT_BY_PATH(B, ‘,‘)), ‘,‘) B FROM (SELECT B, A, ROW_NUMBER() OVER(PARTITION BY A ORDER BY B DESC) RN FROM TEST) START WITH RN = 1 CONNECT BY RN - 1 = PRIOR RN AND A = PRIOR A GROUP BY A;
其中,SYS_CONNECT_BY_PATH函数主要作用是可以把一个父节点下的所有子节点通过某个字符进行区分,然后连接在一个列中显示。
row_number函数的用途是非常广泛,这个函数的功能是为查询出来的每一行记录生成一个序号。生产序号的方法通过over()函数里面的语句来控制。
摘自:http://database.51cto.com/art/201010/231125.htm
Oracle中SYS_CONNECT_BY_PATH函数
标签: