资讯专栏INFORMATION COLUMN

Mysql 分页查询获取总数SQL_CALC_FOUND_ROWS

calx / 3805人阅读

摘要:通常获取查询记录总数我们使用如下语句但是记录总数总是需要多带带的语句来查询,例如在分页查询程序中就有这样的问题,其实可以在一次查询中获取记录和总数的,这就是要使用参数,使用方法如下这虽然是两个语句,但是确是查询一次数据库,效率明显提高了一半其

通常mysql获取查询记录总数我们使用如下语句:

$count = "SELECT COUNT(*) FROM users WHERE k=v";
$data = "SELECT id FROM goods WHERE k=v LIMIT 10";

但是记录总数总是需要多带带的语句来查询,例如在分页查询程序中就有这样的问题,其实mysql可以在一次查询中获取记录和总数的,这就是要使用SQL_CALC_FOUND_ROWS参数,使用方法如下:

$data = "SELECT SQL_CALC_FOUND_ROWS goods WHERE k=v LIMIT 10";
$count = "SELECT FOUND_ROWS()";
$total = $count["total"];

这虽然是两个sql语句,但是确是查询一次数据库,效率明显提高了一半!其中SQL_CALC_FOUND_ROWS 告诉Mysql将sql所处理的行数记录下来,FOUND_ROWS() 则取到了这个纪录。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/30000.html

相关文章

  • WordPress网站10W+数据,mysql数据库查询优化

    摘要:网站网站数据,数据库查询优化数据库查询优化。如果用命令速度会快很多,因为用并不真正执行查询,而是查询优化器估算的行数。则会在中有一行,不会拿到函数估算值。WordPress网站10W+数据,mysql数据库查询优化。WordPress在查询post列表时,默认会同时把文章数量也查询出来,使用这种方式的有:get_posts 、query_posts和WP_Query。get_posts在4....

    番茄西红柿 评论0 收藏2637
  • 大数据分页方案

    摘要:分页正反偏移数据库自带的和的限制条件为我们创建了分页的查询方式,但是如果利用不对,性能会出现千倍万倍差异。这两条是为查询最后一页的翻页查询用的。缓存和不精准数据量达到一定程度的时候,用户根本就不关心精准的总数没人关心差几个。 软件开发中,常用要用到分页、计算总数,数据量超过千万、上亿的时候,往往count 的需要超过 1s 的执行时间,甚至 3-5s,对于一个追求性能的前沿团队来说,这...

    yuanzhanghu 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<