博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql count(*)和count(列)速率
阅读量:5274 次
发布时间:2019-06-14

本文共 438 字,大约阅读时间需要 1 分钟。

  1. count(*)通常是对主键进行索引扫描,count(列)不一定
  2. count(*)是统计表中所有符合的记录总数,count(列)是计算表中所有符合的列的记录数
  3. count的时候,如果没有where限制的话,mysql直接返回保存总的记录数,而有where限制的时候,总是要对mysql进行全表遍历
  4. count(列)中的列如果是主键,则count(列)比count(*)快,否则,count(*)快
  5. 任何情况下,select count(*) from table是最优选择
  6. 尽量减少select count(*) from table where 列='value' 这种查询
  7. 杜绝select count(列) from table 的出现
  8. 列的偏移量决定性能,列越靠后,访问的开销越大,count(*)的算法和偏移量无关,所以count(*)最快,count(最后列)最慢

转载于:https://www.cnblogs.com/xlz307/p/5523782.html

你可能感兴趣的文章