Kesan Menambah 'LIMIT 1' pada Pertanyaan MySQL terhadap Prestasi Pertanyaan
Apabila bekerja dengan pangkalan data MySQL, pembangun sering menghadapi situasi yang mereka jangkakan untuk mendapatkan semula hasil tunggal daripada pertanyaan. Ia lazimnya dipercayai bahawa menambah klausa 'LIMIT 1' pada pertanyaan sedemikian meningkatkan kelajuannya. Kesalahpahaman ini berpunca daripada andaian bahawa MySQL menamatkan carian secara pramatang apabila menemui hasil pertama. Walau bagaimanapun, itu tidak berlaku.
MySQL tidak menghentikan proses carian serta-merta selepas mencari baris padanan pertama. Sebaliknya, ia mengambil keseluruhan set hasil sebelum menggunakan kekangan 'LIMIT 1' dan membuang lebihan baris. Tingkah laku ini membayangkan bahawa kehadiran 'LIMIT 1' sahaja tidak mempercepatkan pertanyaan dengan ketara.
Sama ada atau tidak 'LIMIT 1' memberikan rangsangan prestasi yang ketara bergantung pada ciri pertanyaan:
Oleh itu, keputusan sama ada untuk menggunakan 'LIMIT 1' harus dipandu oleh struktur pertanyaan dan kiraan hasil yang dijangkakan. Jika hasil tunggal dijangka dan pertanyaan tidak direka bentuk secara optimum, menambah 'LIMIT 1' adalah dinasihatkan. Jika tidak, ia tidak perlu dan berkemungkinan mempunyai sedikit pengaruh pada kelajuan pertanyaan.
Atas ialah kandungan terperinci Adakah Menambah `LIMIT 1` pada Pertanyaan MySQL Sentiasa Meningkatkan Prestasi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!