Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mengoptimumkan Penomboran MySQL Tanpa Membuat Dua Pertanyaan?
Penomboran dalam MySQL: Teknik Optimum Tanpa Pertanyaan Berganda
Penomboran, teknik asas untuk memaparkan set data yang besar dalam bahagian yang boleh diurus, selalunya melibatkan dua bahagian yang berasingan pertanyaan dalam MySQL. Satu pertanyaan mendapatkan semula jumlah hasil, manakala satu lagi mengehadkan hasil berdasarkan parameter penomboran.
Soalan Berganda: Pendekatan Konvensional
Secara tradisinya, penomboran dicapai melalui langkah berikut:
Lakukan pertanyaan untuk mengira jumlah nombor daripada hasil:
SELECT COUNT(*) FROM `table` WHERE `some_condition`
Hadkan hasil untuk memaparkan halaman tertentu:
SELECT `fields` FROM `table` WHERE `some_condition` LIMIT 0, 10
Had Pertanyaan Berganda
Walaupun pendekatan ini boleh dipercayai, ia mengalami perkara berikut had:
Alternatif Teknik
Walaupun pertanyaan berganda merupakan teknik yang digunakan secara meluas, ia bukan satu-satunya pilihan untuk penomboran. Berikut ialah kaedah alternatif:
Menggunakan SQL_CALC_FOUND_ROWS dan FOUND_ROWS()
Lakukan pertanyaan dengan klausa SQL_CALC_FOUND_ROWS:
SELECT `fields` FROM `table` WHERE `some_condition` ORDER BY `field_name`
SELECT FOUND_ROWS()
Caching jumlah kiraan boleh meningkatkan prestasi dengan ketara untuk kedua-dua pertanyaan berganda dan teknik SQL_CALC_FOUND_ROWS. Dengan menyimpan kiraan dalam pangkalan data atau cache sementara, anda boleh mengelak daripada melaksanakan pertanyaan pengiraan berulang kali.
Memilih Teknik OptimalTeknik penomboran terbaik untuk aplikasi anda bergantung atas pelbagai faktor, termasuk saiz set data, keperluan prestasi dan kehadiran kriteria pengisihan atau penapisan. Pertimbangkan garis panduan berikut:
Untuk set data kecil dan di mana prestasi tidak kritikal, pertanyaan berganda ialah pilihan yang mudah dan boleh dipercayai.Atas ialah kandungan terperinci Bagaimana untuk Mengoptimumkan Penomboran MySQL Tanpa Membuat Dua Pertanyaan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!