Impak Prestasi Kiraan SQL(*)
Pertanyaan yang mengandungi operasi COUNT(*) boleh menunjukkan perbezaan ketara dalam masa pelaksanaan berdasarkan kriteria tertentu digunakan dalam pertanyaan. Sebagai contoh, dalam kes yang dibentangkan, COUNT(*) mudah sahaja melaksanakan lebih cepat daripada pertanyaan yang sama membandingkan kiraan kepada 0, 1 atau lebih besar daripada 1.
Percanggahan ini berpunca daripada cara SQL mengoptimumkan pertanyaan ini . Untuk pertanyaan pertama, SQL menggunakan pengoptimuman yang dikenali sebagai "wujud", menyemak kehadiran mana-mana baris dalam jadual dan bukannya mengira semua baris. Ini menghasilkan masa pelaksanaan yang lebih cepat.
Sebaliknya, untuk dua pertanyaan lain, SQL menggunakan indeks bukan berkelompok untuk melaksanakan operasi kiraan dengan cekap. Walau bagaimanapun, memandangkan jadual tidak mempunyai sebarang indeks sedemikian, SQL terpaksa mengimbas keseluruhan jadual untuk mendapatkan kiraan, yang membawa kepada kesan prestasi yang ketara.
Meningkatkan Prestasi Kiraan(*)
Untuk meningkatkan prestasi COUNT(*) pertanyaan dalam situasi ini, beberapa teknik boleh digunakan:
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengoptimumkan COUNT(*) Pertanyaan untuk Peningkatan Prestasi dalam SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!