Name of the CTE
OptionalcolumnsColumn names for the CTE (optional)
The CTE body. Prefer a structured query object (same shape as
SelectOptions in src/dialects/dialect.ts: tableName, where,
attributes, order, etc.) over a raw SQL string wherever possible -
a plain string is only meant as an escape hatch for CTE bodies that
can't be expressed structurally (e.g. hand-written recursive UNION ALL
logic referencing the CTE's own name).
OptionalrecursiveWhether this is a recursive CTE
Common Table Expression (CTE) options Used for WITH RECURSIVE and regular WITH clauses