查询的mysql限制

Tom*_*Tom 1 php mysql limit

我正在寻找一些关于如何处理这个特定问题的建议.

我有一个页面,根据查询中带有限制语句的特定条件,将50个数据库行返回到php页面.

问题是,我需要从完整查询中提取统计信息.

基本上,我需要告诉用户数据库中有10000个条目,并且说其中6000个是这个,其中3000个是那个,但只显示前50个.

我的PHP代码不准确报告数字,因为它基于一个停止在50的查询.

我正试图找出解决这个问题的最佳方法.

我认为出于性能原因运行2个查询并不明智.对于性能来说,运行计数查询可能会更具成本效益吗?

或者我应该运行完整查询,但只是通过打破while循环将输出限制为50?

如何最好地处理?谢谢.

Dip*_*mar 5

你可以SQL_CALC_FOUND_ROWS像这样使用

SELECT `SQL_CALC_FOUND_ROWS` * FROM table_name limit 0,5;
Run Code Online (Sandbox Code Playgroud)

它在应用任何LIMIT子句之前获取行计数.

http://dev.mysql.com/doc/refman/5.5/en/information-functions.html#function_found-rows