Back to list

GitLab Recursive CTE

Lv.4303@mukitaro0 playsJan 2, 2026

Recursive CTE for hierarchical data traversal. Used in GitLab for namespace hierarchy.

preview.sql
SQL
1WITH RECURSIVE group_tree AS (
2 SELECT
3 id,
4 name,
5 parent_id,
6 1 AS depth
7 FROM
8 groups
9 WHERE
10 id = 1
11 UNION ALL
12 SELECT
13 g.id,
14 g.name,
15 g.parent_id,
16 gt.depth + 1
17 FROM
18 groups g
19 INNER JOIN
20 group_tree gt ON g.parent_id = gt.id
21)
22SELECT * FROM group_tree;

Custom problems are not included in rankings