Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mengira Baris dengan Cekap dalam Pertanyaan MySQL Anda?
Mengira bilangan baris yang dikembalikan oleh pertanyaan MySQL adalah penting untuk pelbagai operasi pangkalan data. Artikel ini menyediakan penyelesaian komprehensif untuk tugasan ini, memenuhi senario dan teknik yang berbeza.
Kaedah paling mudah untuk mendapatkan jumlah bilangan baris adalah untuk mengulangi hasil dan menambah pembilang. Walau bagaimanapun, MySQL menawarkan fungsi terbina dalam, mysql_num_rows, yang menyediakan kiraan terus baris. Sebagai contoh, dalam PHP, anda boleh menggunakan mysqli_num_rows seperti berikut:
<code class="php"><?php $result = mysqli_query($link, "SELECT * FROM table1"); $num_rows = mysqli_num_rows($result); echo "$num_rows Rows\n"; ?></code>
Untuk mengira baris yang memenuhi kriteria tertentu, gunakan fungsi COUNT(*). Contohnya, untuk mengira baris di mana bar adalah sama dengan 'nilai':
SELECT COUNT(*) FROM foo WHERE bar= 'value';
Jika anda menggunakan klausa LIMIT tetapi ingin mengetahui jumlah bilangan baris tanpa menggunakan had, gunakan SQL_CALC_FOUND_ROWS diikuti dengan SELECT FOUND_ROWS(). Contohnya:
<code class="sql">SELECT SQL_CALC_FOUND_ROWS * FROM foo WHERE bar="value" LIMIT 10; SELECT FOUND_ROWS();</code>
Walau bagaimanapun, ambil perhatian bahawa SQL_CALC_FOUND_ROWS ditamatkan pada MySQL 8.0.17 dan akan dialih keluar dalam versi yang lebih baru. Adalah disyorkan untuk menggunakan pertanyaan berasingan untuk mengira kiraan.
Untuk jadual besar, menjalankan pertanyaan berasingan untuk mengira boleh tidak cekap. Sebaliknya, pertimbangkan untuk menyimpan kiraan dalam cache dengan melaksanakan pertanyaan yang lebih mudah sekali dan menggunakannya semula sebelum melancarkan pertanyaan yang lebih kompleks.
Atas ialah kandungan terperinci Bagaimana untuk Mengira Baris dengan Cekap dalam Pertanyaan MySQL Anda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!