Pelajaran 27 / 37 · Menyusun query

CTE adalah langkah bernama yang berjalan lebih dulu

Semua yang ada di dalam WITH punya pipeline sendiri, yang ditampilkan di atas query utama. Setelah itu, query utama membaca CTE tersebut seperti membaca tabel biasa.

Query-nya

WITH paid AS (
  SELECT *
  FROM orders
  WHERE status = 'paid'
)
SELECT customer_id, count(*) AS paid_orders
FROM paid
GROUP BY customer_id

Coba status <> 'paid' di dalam CTE: namanya tetap paid, tapi kini ia menyerahkan 3 pesanan lainnya. Nama tidak menjamin apa pun.

Berikutnya: Subquery yang berdiri sendiri berjalan lebih dulu · Semua pelajaran