ホームページ >データベース >mysql チュートリアル >MySQLi の「COUNT(*)」が実際の行数ではなく 1 を返す場合があるのはなぜですか?
MySQLi count(*) が常に 1 を返す理由
MySQLi 拡張機能を使用して MySQL テーブル内の行数をカウントする場合、COUNT (*) 関数は、期待されるカウントではなく 1 を返す場合があります。
この問題を解決するには、クエリの結果を取得することが重要です。次の修正されたコードは、正しいアプローチを示しています。
// Execute the query $result = $db->query("SELECT COUNT(*) FROM `table`"); // Fetch the result row $row = $result->fetch_row(); // Extract the count from the fetched row index 0 $count = $row[0];
行をフェッチし、その最初のインデックスにアクセスすることで、テーブル内の実際の行数を取得できます。このメソッドは、COUNT(*) が最初に 1 を返した場合でも、正しい結果を返します。
以上がMySQLi の「COUNT(*)」が実際の行数ではなく 1 を返す場合があるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。