0
所以我執行查詢:SQL_CALC_FOUND_ROWS不工作
SELECT SQL_CALC_FOUND_ROWS * FROM table l LIMIT 10, 20;
返回從表20行,總共有553個表中的行
然後我立即執行SELECT FOUND_ROWS();
但這相反,只返回數字1,儘管我的表中有553行(應該返回553,我是否正確?)
w帽子我做錯了嗎?
所以我執行查詢:SQL_CALC_FOUND_ROWS不工作
SELECT SQL_CALC_FOUND_ROWS * FROM table l LIMIT 10, 20;
返回從表20行,總共有553個表中的行
然後我立即執行SELECT FOUND_ROWS();
但這相反,只返回數字1,儘管我的表中有553行(應該返回553,我是否正確?)
w帽子我做錯了嗎?
我懷疑你有一個語法錯誤,因爲SQL中的名字不應該包含空格。嘗試在[table 1]
附近添加方括號,如果這是您的表的名稱。
刪除你的限制,我認爲它沒有顯示20行;它只顯示10行。
$sql = "SELECT SQL_CAL_FOUND_ROWS * FROM users "; //don;t write table then table name
$result = mysql_query($sql);
//這些根據您的要求使用:
$sql = "SELECT SQL_CAL_FOUND_ROWS * FROM users ";
$result = mysql_query($sql);
$sql = "SELECT FOUND_ROWS() AS `found_rows`";
$rows = mysql_query($sql);
$rows = mysql_fetch_assoc($rows);
$total_rows = $rows['found_rows'];
你的語法正確,你獲得FOUND_ROWS的()的結果之前執行另一套查詢的任何機會呢? – ajreal