Ένα CTE (Common Table Expression), που ορίζεται με WITH, είναι ένα ονοματισμένο προσωρινό σύνολο αποτελεσμάτων που κάνει τα σύνθετα ερωτήματα ευανάγνωστα. Το PostgreSQL υποστηρίζει πλήρως τα CTEs, συμπεριλαμβανομένων των αναδρομικών CTEs (WITH RECURSIVE) για τη διάσχιση ιεραρχικών/δενδρικών δεδομένων.
Basic CTEs — ευανάγνωστη κατασκευή ερωτημάτων
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;
