php pdo method to query the number of records: 1. Use the fetchAll function to query, with the syntax such as "$rows=$q->fetchAll();"; 2. Use the sql count function, with the syntax such as "$q=$db->query("SELECT count(*)...")".
Recommendation: "PHP Video Tutorial"
PHP PDO select statement result row count calculation
PDO has a function PDOStatement::rowCount that returns the number of rows affected by the previous SQL statement.
The result of the rowCount function is correct for DELETE, INSERT, or UPDATE statements, but for select statements, it is related to the implementation of the database. Some databases will read all the result sets into memory when executing a select statement, but for a huge number of result sets, this is obviously inefficient. Most databases will only return part of the result set, and then return the rest of the result set when needed, so that both memory usage and execution efficiency are optimized. For the latter case, rowCount cannot return the correct number of rows in the SELECT statement result set.
There are several ways to obtain the correct number of rows in the SELECT result set
1. Use the fetchAll function
$q = $db->query("SELECT ..."); $rows = $q->fetchAll(); $rowCount = count($rows);
2. Use the sql count function
$q = $db->query("SELECT count(*) from db;"); $rows = $q->fetch(); $rowCount = $rows[0];
Obviously the second method is more efficient
The above is the detailed content of How to query the number of records in php pdo. For more information, please follow other related articles on the PHP Chinese website!