您的位置:首页 > 数据库 > MySQL

MySQL高效获取记录总数

2015-07-18 11:46 537 查看
通常mysql获取查询记录总数我们使用如下语句:
SELECT COUNT(*) FROM users WHERE k='avs';  

或:

SELECT id FROM goods WHERE k='avs' LIMIT 10;


但是记录总数总是需要单独的语句来查询,例如在分页查询程序中就有这样的问题,其实mysql可以在一次查询中获取记录和总数的,这就是要使用SQL_CALC_FOUND_ROWS参数,使用方法如下:
SELECT SQL_CALC_FOUND_ROWS goods WHERE k='avs' LIMIT 10; 

SELECT FOUND_ROWS();


这虽然是两个sql语句,但是确是查询一次数据库,效率明显提高了一半!其中SQL_CALC_FOUND_ROWS
告诉Mysql将sql所处理的行数记录下来,FOUND_ROWS() 则取到了这个纪录。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: