如何獲得結果並計算結果一個查詢? (IM使用PDO語句)如何在SQL中選擇和COUNT行?
SELECT * FROM table; // gets results
SELECT COUNT(*) FROM table; // counts results
如何獲得結果並計算結果一個查詢? (IM使用PDO語句)如何在SQL中選擇和COUNT行?
SELECT * FROM table; // gets results
SELECT COUNT(*) FROM table; // counts results
$result = mysql_query("SELECT * FROM table");
$count = mysql_num_rows($result);
使用PDO:
$statement = $dbh->prepare('SELECT * FROM table');
$statement->execute();
$count = $statement->rowCount();
這不符合PDO聲明,是否有這樣的PDO的作品? – supercoolville
你的OP沒有提及PDO,但你可以使用rowCount函數,雖然它不如上面那樣可靠 - http://us3.php.net/manual/en/pdostatement.rowcount.php – nickb
我加了一個例子爲PDO。 – nickb
這將使記錄計數在每行的末尾。
SELECT *
, COUNT(1) OVER() AS RecordCount
FROM table;
SELECT *, (select count(*) FROM table) ct FROM table
這實際上是對錶的兩個查詢,但是返回的結果集是一個。 –
-1 downvote不回答OP的問題:請求是針對一個查詢。 –
這是一個聲明返回一個響應。你能指出我的定義一個SQL語句的子查詢不是「一個查詢」嗎? – phatfingers
你應該執行只有一個查詢...
$sql = SELECT * FROM table;
$res = mysql_query($sql);
你可以通過mysql_num_rows總數();功能..像這樣..
$count = mysql_num_rows($res);
如果您使用了一個查詢,您希望您的結果看起來像什麼? –
另外,你使用的是什麼風格的SQL? –
是「GROUP BY ... WITH ROLLUP」的可能性嗎? –