Bạn không cần chỉ định các cột trong WITH
phần. Nếu bạn bỏ qua điều đó, tên cột sẽ được xác định bởi truy vấn đầu tiên trong UNION
:
WITH RECURSIVE recursetree AS (
SELECT * FROM tree WHERE parent_id = 0
UNION
SELECT t.*
FROM tree t
JOIN recursetree rt ON rt.id = t.parent_id
)
SELECT *
FROM recursetree;