以下是来自这里和许多其他网站的示例,但没有得到预期的结果
我的PHP代码片段;
$query="SELECT * FROM book";
$result=mysql_query($query);
echo mysql_num_rows($result); //returns 14
$query="SELECT FOUND_ROWS()";
$rtotal=mysql_query($query);
echo mysql_result($rtotal,0); //returns 14
$query="SELECT * FROM book LIMIT 0,4";
$result=mysql_query($query);
echo mysql_num_rows($result); //returns 4
$query="SELECT FOUND_ROWS()";
$rtotal=mysql_query($query);
echo mysql_result($rtotal,0); //returns 4 Why is it 4 and not 14??
Run Code Online (Sandbox Code Playgroud)
在最后一个例子中为什么它是4而不是14?我究竟做错了什么?
hop*_*ppa 18
将SQL_CALC_FOUND_ROWS添加到select语句中:http://dev.mysql.com/doc/refman/5.5/en/information-functions.html#function_found-rows
这会强制MySQL对行进行计数,就像限制语句不存在一样.
$query="SELECT SQL_CALC_FOUND_ROWS * FROM book LIMIT 0,4";
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9971 次 |
| 最近记录: |