Rumah > pangkalan data > tutorial mysql > Bolehkah Berbilang CTE Digabungkan dalam Satu Pertanyaan SQL?

Bolehkah Berbilang CTE Digabungkan dalam Satu Pertanyaan SQL?

Patricia Arquette
Lepaskan: 2025-01-01 10:49:11
asal
201 orang telah melayarinya

Can Multiple CTEs Be Combined in a Single SQL Query?

Menyiasat dengan Berbilang CTE

Amalan konvensional selalunya memerlukan gabungan berbilang Ungkapan Jadual Biasa (CTE) untuk mencapai tugas mendapatkan data yang kompleks. Walau bagaimanapun, keraguan masih berlarutan mengenai kebolehlaksanaan menggabungkan berbilang CTE dalam satu pertanyaan SQL.

Menyokong Berbilang CTE

Memang, adalah boleh dilaksanakan sepenuhnya untuk menggabungkan berbilang CTE dalam satu pertanyaan SQL. Sintaks memerlukan penggunaan kata kunci WITH sekali sahaja, diletakkan pada permulaan pertanyaan. Walaupun apabila berurusan dengan gabungan CTE rekursif dan bukan rekursif, kata kunci RECURSIVE masih harus disertakan sekali sahaja di bahagian atas.

Sebagai contoh:

WITH RECURSIVE
  cte1 AS (...)         -- non-recursive
, cte2 AS (SELECT ...
           UNION ALL
           SELECT ...)  -- recursive
, cte3 AS (...)
SELECT ... FROM cte3 WHERE ...
Salin selepas log masuk

Perlu diperhatikan bahawa pesanan klausa CTE menjadi tidak relevan apabila kata kunci RECURSIVE hadir. Menurut manual SQL, ia membenarkan pertanyaan CTE membuat rujukan kepada CTE lain tanpa mengira susunannya dalam klausa WITH.

Selain itu, CTE bukan rekursif yang tidak dirujuk dalam pernyataan SELECT akhir dan tidak mempunyai sebarang kesan cagaran tidak akan dilaksanakan.

Atas ialah kandungan terperinci Bolehkah Berbilang CTE Digabungkan dalam Satu Pertanyaan SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan