Gunakan COUNT
, secara internal server akan memproses permintaan secara berbeda.
Saat melakukan COUNT
, server hanya akan mengalokasikan memori untuk menyimpan hasil hitungan.
Saat menggunakan mysql_num_rows
, server akan memproses seluruh rangkaian hasil, mengalokasikan memori untuk semua hasil tersebut, dan menempatkan server dalam mode pengambilan, yang melibatkan banyak detail berbeda, seperti penguncian.
Anggap saja seperti skenario semu berikut:
SELECT COUNT(*)
Hei Bob, ada berapa orang di ruang kelas?
mysql_num_rows
Hei Bob, kirim semua orang dari kelas ke saya, ... Saya akan menghitung mereka untuk mendapatkan jumlah orang sendiri
Singkatnya, saat menggunakan mysql_num_rows
Anda mentransfer semua catatan ke klien, dan klien harus menghitung sendiri jumlahnya.