Mysql百万级数据查询优化
发布日期:2025-04-18 05:52:47 浏览次数:46 分类:精选文章

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

两种查询引擎查询速度(MyIsam 引擎)

InnoDB 中不保存表的具体行数,也就是说,执行 select count(*) from table 时,InnoDB 要扫描一遍整个表来计算有多少行。

而 MyISAM 只需要简单地读出保存好的行数即可。

需要注意的是,当 count(*) 语句包含 where 条件时,两种表的操作有些不同。对于 InnoDB 类型的表,执行 count(*)count(主键) 时,加上 where col 条件(其中 col 列是表的主键之外的其他具有唯一约束索引的列),查询速度会很快。这样可以避免全表扫描。

百万数据下 MySQL 分页问题

在开发过程中,我们经常会使用分页,核心技术是使用 limit 进行数据的读取。在使用 limit 进行分页的测试过程中,我们得到了以下数据:

  • select * from news order by id desc limit 0,10 耗时 0.003 秒
  • select * from news order by id(无 limit 条件)
上一篇:MySQL的 DDL和DML和DQL的基本语法
下一篇:mysql登陆慢问题解决

发表评论

最新留言

很好
[***.229.124.182]2026年06月16日 18时04分38秒