Rumah >pangkalan data >tutorial mysql >Mengapa MySQLi Saya `COUNT(*)` Sentiasa Mengembalikan 1?
Hasil Kiraan(*) MySQLi Salah: Sentiasa Mengembalikan 1
Dalam percubaan untuk mendapatkan semula bilangan baris dalam jadual, anda temui isu di mana kiraan $result->num_rows secara konsisten mengembalikan 1. Walaupun menggunakan pertanyaan yang betul dalam phpMyAdmin dan mendapatkan hasil yang diharapkan, kaedah PHP bertindak secara tidak dijangka.
Untuk membetulkan tingkah laku ini, anda perlu memahami bahawa COUNT(*) ialah fungsi agregat yang mengembalikan satu nilai. Untuk mendapatkan semula nilai ini, anda perlu mengambil hasil daripada pertanyaan menggunakan $result->fetch_row(). Elemen pertama dalam tatasusunan yang terhasil ($baris[0]) akan mengandungi kiraan.
Berikut ialah kod yang diperbetulkan:
$result = $db->query("SELECT COUNT(*) FROM `table`"); $row = $result->fetch_row(); echo '#: ', $row[0];
Dengan memasukkan perubahan ini, anda kini akan memperoleh dengan betul kiraan baris dalam jadual anda.
Atas ialah kandungan terperinci Mengapa MySQLi Saya `COUNT(*)` Sentiasa Mengembalikan 1?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!