Un CTE (Common Table Expression), definit cu WITH, este un set de rezultate temporar numit care face ca interogările complexe să fie ușor de citit. PostgreSQL suportă complet CTE-urile, inclusiv CTE-urile recursive (WITH RECURSIVE) pentru traversarea datelor ierarhice/de tip arbore.
CTE-uri de bază — construirea interogărilor ușor de citit
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;
