猿问

mysql: limit性能是不是比between或者in差不少

比如 select * from table limit 100
如果表里有100万个数据,
那么这个语句会全表扫描,把符合要求的100万数据都筛选出来
然后再取前100行

而假如知道id是从1开始递增
那么select * from table where id between 1 and 100
性能就会高很多?


DIEA
浏览 564回答 1
1回答

心有法竹

形如 select * from table limit 100的 sql 并不会造成全表扫描, 除非加上查询或排序条件.select * from table where id between 1 and 100会比较快前提是 id 是主键或唯一键以上两者的速度上不会有太大区别
随时随地看视频慕课网APP

相关分类

MySQL
我要回答