MySQL num_rows返回值:是什么?
在MySQL中,當查詢語句返回結果集時,可以使用PHP中的mysqli_num_rows()函數或者PDO中的rowCount()函數來獲取結果集中的行數。這個返回值指的是結果集中的行數,和SQL中指定的行數沒有關系。
使用mysqli_num_rows()函數
如果使用mysqli查詢語句來獲取結果集,那么可以使用mysqli_num_rows()函數來獲取結果集中的行數。例如:
$mysqli = new mysqli("localhost", "user", "password", "database"); $result = $mysqli->query("SELECT * FROM users"); $num_rows = mysqli_num_rows($result); echo "共有".$num_rows."行結果。";
使用PDO的rowCount()函數
如果使用PDO查詢語句來獲取結果集,那么可以使用rowCount()函數來獲取結果集中的行數。例如:
$pdo = new PDO("mysql:host=localhost;dbname=database", "user", "password"); $stmt = $pdo->prepare("SELECT * FROM users"); $stmt->execute(); $num_rows = $stmt->rowCount(); echo "共有".$num_rows."行結果。";
注意事項
需要注意的是,如果查詢語句中使用了GROUP BY、DISTINCT、HAVING和LIMIT等操作符,那么返回的行數可能和實際的行數不同。因此,在使用num_rows返回值時要謹慎,最好不要將這個值作為精確的行數。