面试被问到,没有思路
mysql查询语句 id 为主键
select id from table where id in (1,2,3)
select id from table where id in (2,5,4)
两个sql什么区别?
好像有个降序条件
这个我做个类比吧,
假设有一张excel表,里面有5行数据,id即为行号,然后你只能通过键盘上下键来移动光标定位数据。
假设光标始终初始在第一行,
当你要定位第1、2、3行时,只需要按两次下键即可让光标扫到所有需要的行;
当你要定位第2、5、4行时,先把光标下移到2,然后再下移到5,再上移到4,需要按 下、下下下、上,一共6次按键
但如果第2例是2、4、5的顺序,你就会发现需要的操作会变少,只需要按4次下就行了。
上面这个类比中,excel表格就相当于磁盘存储,光标就相当于磁盘的磁头,尽量让其要读取的数据是连续的,这样能减少一些不必要的性能开销