En CTE (Common Table Expression), definierad med WITH, är en namngiven temporär resultatmängd som gör komplexa frågor läsbara. PostgreSQL stöder fullt ut CTEs, inklusive rekursiva CTEs (WITH RECURSIVE) för att traversera hierarkisk/trädstrukturerad data.
Grundläggande CTEs — läsbar frågebyggnad
active_users (
id, name users active
),
order_counts (
user_id, () cnt orders user_id
)
u.name, oc.cnt
active_users u
order_counts oc u.id oc.user_id;
