SQL WHERE col IN (...)
dengan Pelbagai Nilai: Prestasi dan Had
Menggunakan klausa SQL WHERE col IN (...)
dengan bilangan nilai yang besar boleh membawa kepada isu prestasi. Sistem pangkalan data mengenakan had pada saiz senarai IN
dan melebihi had ini boleh menyebabkan kegagalan pertanyaan. Had khusus sangat berbeza-beza bergantung pada sistem pangkalan data.
Walaupun Microsoft SQL Server mempunyai had yang tinggi (butiran tersedia di https://www.php.cn/link/a6ed9258d53b17bac9cfd263432af8fa), sistem lain, seperti Oracle, mungkin menghadapi pengehadan dengan lebih mudah.
Untuk mengelakkan isu ini dan meningkatkan prestasi pertanyaan, terutamanya dengan senarai IN
yang luas, adalah amalan terbaik untuk menggunakan jadual sementara. Isi jadual sementara ini dengan nilai anda dan kemudian lakukan operasi JOIN
. Pendekatan ini secara amnya mengatasi klausa IN
yang panjang.
Atas ialah kandungan terperinci Apakah Had Penggunaan `WHERE col IN (...)` dengan Banyak Nilai dalam SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!