MySQL记录总条数实现查询优化

发布时间:2020-05-08 11:04:00

来源:亿速云

阅读:268

作者:三月

本文主要给大家介绍MySQL记录总条数实现查询优化,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下MySQL记录总条数实现查询优化吧。

1、COUNT(*)和COUNT(COL)

COUNT(*)通常是对主键进行索引扫描,而COUNT(COL)就不一定了,另外前者是统计表中的所有符合的纪录总数,而后者是计算表中所有符合的COL的纪录数。还有有区别的。

优化总结,对于MyISAM表来说:

1.任何情况下SELECT COUNT(*) FROM tablename是最优选择;

2.尽量减少SELECT COUNT(*) FROMtablename WHERE COL = 'value' 这种查询;

3.杜绝SELECT COUNT(COL) FROM tablename WHERE COL2 ='value' 的出现。

2、COUNT(*)还是COUNT(id)

根据我的理解,应该是使用COUNT(id)更加快速,因为如果我的id是一个自增的主键,那么计算它的数量显然比计算所有字段的数量需要消耗的资源少一些。但是我不止在一篇的类似指导mysql查询加速的文章中看到,都建议我们使用SELECT COUNT(*)而非直接COUNT主键,这是为什么呢?

貌似是因为用MyISAM引擎的表存储了总条数,如果没有WHERE或者WHERE恒为真(比如WHERE 1),那么COUNT(*)可以直接返回总条数。

另外,很显然COUNT(*)不是"计算所有的字段",显然MySQL会把*解析成“一条数据”的意思。

测试数据,简单对比一下,未做更深入的测试:

#0.817-一百万条的查询时间

select count(*) from student ;

#0.789-一百万条的查询时间

select count(id) from student;

#1.011-一百万条的查询时间

select count(name) from student;

#1.162-一百万条的查询时间

SELECT COUNT(*) FROM student WHERE namelike '%xiaoli%';#默认用主键索引查询,但是加上like条件后索引失效

看完以上关于MySQL记录总条数实现查询优化,很多读者朋友肯定多少有一定的了解,如需获取更多的行业知识信息 ,可以持续关注我们的行业资讯栏目的。

mysql查询记录总数_MySQL记录总条数实现查询优化相关推荐

  1. sql 统计查询某一字段的某一个值的总条数

    查询某一字段的某一个值的总条数 比如:orderprogressno字段的值分别为1,2,3,4,那么就是查询值为1的总条数和值为2的总条数 select orderno,count(orderpro ...

  2. mysql查询优化count(*)-查询记录总条数(二)

    前文提到查询记录总条数有时候会使用到where来限定查询范围. 从优化原则来说,where可能会降低效率. 但是如果where设定的合理,符合一定条件,也可以实现查询优化效果. 如果条件是索引列,那么 ...

  3. mysql 查询条数优化_MySQL优化总结-查询总条数

    1.COUNT(*)和COUNT(COL) COUNT(*)通常是对主键进行索引扫描,而COUNT(COL)就不一定了,另外前者是统计表中的所有符合的纪录总数,而后者是计算表中所有符合的COL的纪录数 ...

  4. mysql 查询数据条数_MySQL优化总结-查询总条数

    1.COUNT(*)和COUNT(COL) COUNT(*)通常是对主键进行索引扫描,而COUNT(COL)就不一定了,另外前者是统计表中的所有符合的纪录总数,而后者是计算表中所有符合的COL的纪录数 ...

  5. mysql查询语句ppt,mysql查询表中数据总条数的语句怎么写

    sql查询表中数据总条:SELECT COUNT(*) FROM 表名称.count(*)代表着抄数据统计的总数.例子本例返回 "Persons" 表中的行数:SELECT COU ...

  6. oracle分页查询加总数,oracle count 百万级 分页查询记要总数、总条数优化

    oracle count 百万级 分页查询记录总数.总条数优化 oracle count 百万级 查询记录总数.总条数优化 最近做一个项目时,做分页时,发现分页查询速度很慢,分页我做的是两次查询,一次 ...

  7. 解决Mybatis-Plus或PageHelper多表分页查询总条数不对问题

    文章目录 前言 一.问题说明 1.引入依赖 2.Mybatis-Plus配置 3.创建mapper层 4.编写xxxMapper.xml文件 5.测试一(不传任何条件,只分页) 5.1.结果总结 5. ...

  8. hadoop查看文件总条数及按某个关键词查询

    hadoop fs -cat /xxxDetailFormat/xxx_team_format/part-00000|grep 'xxx' hadoop fs -cat/xxxDetailFormat ...

  9. MySQL的limit分页公式和总页数计算

    MySQL的limit分页公式和总页数计算 limit分页公式:curPage是当前第几页:pageSize是一页多少条记录 limit (curPage-1)*pageSize,pageSize 实 ...

  10. MySQL:limit分页公式、总页数公式

    1)       limit分页公式 (1)limit分页公式:curPage是当前第几页:pageSize是一页多少条记录 limit (curPage-1)*pageSize,pageSize ( ...

最新文章

  1. 国内外有名的安全扫描工具,你知道几个?
  2. POJ1722二维spfa+优先队列优化
  3. [android] 切换按钮-自定义控件-拖动效果
  4. 顺序栈初始化,判空,进栈,出栈,打印
  5. Python语言程序设计基础(2)—— Python程序实例解析
  6. Pymetrics开源公平性感知机器学习算法Audit AI
  7. python 画蜘蛛_如何学习 R 绘图?
  8. 语言nomogram校准曲线图_R语言实现Cox模型校准度曲线绘制
  9. 那些还在传程序猿35岁职业危机
  10. VBA自定义方法 快捷键设置
  11. Thinking in Java 11.13 Foreach与迭代器
  12. 组成原理---控制器
  13. 微信小程序如何使用阿里巴巴矢量图标库彩色图标
  14. 分段式多级离心泵_分段式多级离心泵的组装与调整
  15. 关于部分积分,动能公式另一种推导
  16. S2e-env环境及编译学习1
  17. 基于pion生态的SFU实时音视频发布服务(一)
  18. 新知实验室 TRTC实时音视频
  19. AjaxPro.Utility.RegisterTypeForAjax()的作用 AjaxPro第三方控件
  20. 系统集成项目管理工程师——挣值管理(PV、EV、AC、SV、CV、SPI、CPI)

热门文章

  1. WireShark抓包分析
  2. Centos 7 Mysql 配置文件位置
  3. SWAT模型高阶应用暨无资料地区建模、不确定分析与气候变化、土地利用对面源污染影响模型改进案例分析
  4. qpsk调制matlab仿真,QPSK调制解调仿真
  5. KNX转485模块的开发
  6. Altium Designer20 PCB封装库制作
  7. 2022华为杯研究生数学建模竞赛选题建议
  8. 一道携程SQL笔试题
  9. python爬取国内代理ip_python爬虫实战:爬取西刺代理的代理ip(二)
  10. STM32学习笔记(正点原子STM32Mini版)