Limit全表查询
来源:2-3 数据操作语言:数据分页
慕哥8458337
2021-05-31 14:32:47
如图为执行顺序,SELECT子句先执行完了才执行LIMIT子句,照这样的逻辑看,SELECT不就直接把全表的记录都查出来了,然后通过LIMIT进行过滤吗。这样下去如果有一亿条记录,我只看前五条,用limit 0,5 ,它还是会先执行SELECT子句查询一亿条记录,然后执行limit取前五条,这样耗时就很大,请问这个该怎么优化呢?
1回答
好帮手慕小尤
2021-05-31
同学你好,并不是先查询出一亿条记录,然后执行limit取前五条。而是根据limit查询出前五条的数据。也就是说加上 limit 后,只要找到了对应的几条记录,就不会继续向下扫描了,可以大大提高效率。
祝学习愉快!
相似问题