Rumah >pangkalan data >tutorial mysql >Apakah kegunaan dengan seperti dalam mysql

Apakah kegunaan dengan seperti dalam mysql

WBOY
WBOYasal
2022-01-05 10:31:1421585semak imbas

Dalam mysql, "dengan sebagai" juga dipanggil subquery, yang digunakan untuk mentakrifkan serpihan sql, dan serpihan itu akan digunakan berulang kali oleh keseluruhan pernyataan sql ini berkali-kali bersamaan dengan a jadual sementara awam. Sintaks ialah "dengan tmp sebagai (pernyataan pertanyaan)".

Apakah kegunaan dengan seperti dalam mysql

Persekitaran pengendalian tutorial ini: sistem Windows 10, versi mysql8.0.22, komputer Dell G3.

Apakah penggunaan dengan seperti dalam mysql

WITH AS phrase, juga dipanggil subquery factoring, boleh mentakrifkan Fragmen SQL, ini Serpihan SQL akan digunakan oleh keseluruhan pernyataan SQL. Ia boleh menjadikan pernyataan SQL lebih mudah dibaca, atau ia boleh digunakan sebagai bahagian yang menyediakan data di bahagian berlainan UNION ALL.

Untuk UNION ALL, gunakan WITH AS untuk mentakrifkan pernyataan UNION ALL Apabila serpihan dipanggil lebih daripada 2 kali, pengoptimum akan secara automatik meletakkan data yang diperolehi oleh frasa WITH AS ke dalam jadual Temp. Gesaan "meterize" memaksa data frasa WITH AS untuk dimasukkan ke dalam jadual sementara global. Banyak pertanyaan boleh dipercepatkan dengan cara ini.

Oleh kerana subkueri dengan sebagai hanya dilaksanakan sekali, hasilnya disimpan dalam jadual sementara pengguna untuk meningkatkan prestasi pertanyaan, jadi ia sesuai untuk berbilang senario rujukan, seperti: statistik laporan kompleks, pertanyaan halaman dan perlu mendapatkan Keputusan seperti jumlah, kiraan dan purata digunakan sebagai syarat penapisan untuk melaksanakan pemprosesan sekunder pada hasil pertanyaan!

Terutama berguna untuk kesatuan semua. Kerana setiap bahagian kesatuan mungkin sama, tetapi jika setiap bahagian dilaksanakan semula, kosnya terlalu tinggi

Sintaksi biasa

–untuk alias

with tmp as (select * from tb_name)

– Untuk berbilang alias

with
tmp as (select * from tb_name),
tmp2 as (select * from tb_name2),
tmp3 as (select * from tb_name3),
…

– ia bersamaan dengan membina jadual e sementara

with e as (select * from scott.emp e where e.empno=7499)
select * from e;

– ia bersamaan dengan membina jadual e dan d sementara

with
e as (select * from scott.emp),
d as (select * from scott.dept)
select * from e, d where e.deptno = d.deptno;

Malah, ia adalah untuk memasukkan banyak pernyataan SQL yang digunakan berulang kali dengan sebagai, mengambil alias dan menggunakannya dalam pertanyaan seterusnya Ini memainkan peranan pengoptimuman dalam kumpulan besar pernyataan SQL, dan jelas dan jelas. .

Pembelajaran yang disyorkan: tutorial video mysql

Atas ialah kandungan terperinci Apakah kegunaan dengan seperti dalam mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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