Heim >Datenbank >MySQL-Tutorial >Warum gibt meine MySQLi-Abfrage „COUNT(*)' immer 1 zurück?
MySQLi Count(*) gibt konsistent 1 zurück: Eine Erklärung
Wenn Sie auf das Problem stoßen, bei dem MySQLi's count(*) immer 1 zurückgibt, ist es Es ist wichtig zu verstehen, dass die Abfrage die Anzahl nicht direkt als Wert zurückgibt. Stattdessen wird eine Ergebnismenge zurückgegeben, die einen einzelnen Datensatz mit der Anzahl als Daten enthält.
Um auf die tatsächliche Anzahl zuzugreifen, müssen Sie diesen Datensatz aus der Ergebnismenge abrufen. Das folgende Codefragment zeigt, wie das geht:
$result = $db->query("SELECT COUNT(*) FROM `table`"); $row = $result->fetch_row(); echo '#: ', $row[0];
Durch das Abrufen der ersten Zeile des Ergebnissatzes rufen Sie ein Array ab, in dem das erste Element den Zählwert enthält. Dies liefert das korrekte Ergebnis, das sich von dem in phpMyAdmin erhaltenen Ergebnis unterscheidet, wo die Anzahl direkt in den Abfrageergebnissen angezeigt wird.
Denken Sie daran, dass die num_rows-Eigenschaft von MySQLi die Anzahl der betroffenen Zeilen beim Einfügen, Aktualisieren oder Löschen angibt Operationen. Es eignet sich nicht zum Abrufen von Zählwerten in ausgewählten Abfragen.
Das obige ist der detaillierte Inhalt vonWarum gibt meine MySQLi-Abfrage „COUNT(*)' immer 1 zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!