Bir CTE (Common Table Expression), WITH ile tanımlanan, karmaşık sorguları okunabilir kılan adlandırılmış geçici bir sonuç kümesidir. PostgreSQL, hiyerarşik/ağaç verilerini geçişlemek için recursive CTE'ler (WITH RECURSIVE) dahil olmak üzere CTE'leri tam olarak destekler.
Temel CTE'ler — okunabilir sorgu oluşturma
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;
