是什么让您认为聚合与递归查询有关系?似乎对我有用,
CREATE TABLE foo(pk,fk,description)
AS VALUES
( 1 , null , 'domains' ),
( 2 , 1 , 'people' ),
( 3 , 1 , 'cars' ),
( 4 , 2 , 'tom' ),
( 5 , 2 , 'smith' ),
( 6 , 3 , 'vmw' ),
( 7 , 2 , 'betty' ),
( 8 , 3 , 'ford' );
WITH RECURSIVE t(pk, fk, description, level) AS (
SELECT pk, fk, ARRAY[description], 0
FROM foo
WHERE fk IS NULL
UNION ALL
SELECT foo.pk, foo.fk, t.description || foo.description, t.level+1
FROM t
JOIN foo ON (foo.fk = t.pk)
)
SELECT *
FROM t
FOR UPDATE;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
73 次 |
| 最近记录: |