Meneroka Had Klausa IN dalam SQL Server
Klausa SQL Server IN membenarkan anda untuk menguji sama ada nilai lajur sepadan dengan mana-mana nilai yang dinyatakan dalam senarai ungkapan. Walaupun klausa ini serba boleh, ia mempunyai had tertentu, salah satunya ialah bilangan nilai yang boleh ditampung.
Adakah Terdapat Had?
Ya, ada had kepada bilangan nilai yang boleh dimasukkan dalam klausa IN. Walau bagaimanapun, Microsoft tidak memberikan nombor tertentu sebaliknya menyatakan bahawa ia terletak "dalam ribuan."
Penggunaan Sumber dan Kod Ralat
Termasuk bilangan nilai yang berlebihan dalam klausa IN boleh menegangkan sumber dan mencetuskan ralat 8623 atau 8632. Ralat ini menunjukkan bahawa kerumitan pertanyaan telah melebihi kapasiti sistem.
Butiran Ralat
Ralat 8623 berlaku apabila sistem membelanjakan sumber dalaman dalam percubaan untuk menjana pelan pertanyaan untuk pertanyaan yang kompleks atau intensif sumber. Ralat 8632 timbul apabila pertanyaan mengandungi ungkapan rumit yang melebihi had dalaman.
Penyelesaian
Untuk memintas had, Microsoft mengesyorkan menyimpan item senarai IN dalam jadual dan menggunakan SELECT subquery dalam klausa IN. Pendekatan ini mengurangkan beban daripada klausa IN itu sendiri dan mengurangkan kemungkinan keletihan sumber atau ralat.
Atas ialah kandungan terperinci Apakah Had Pelayan SQL IN Klausa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!