举个例子,表里有17万条的人物数据,用身份证做索引,在查询的时候需要先获取身份证。
如果要获取一千个人的信息,在获取了身份证的情况下并且身份证放入了list中,用in还是用idcard=x效率高
select * from table where idcard in (idnum1,idnum2,idnum3 -1000)
select * from table where idcard in = idnum1 select * from table where idcard in = idnum2
都是要遍历list的 哪个效率会好,默认全部用大写,省去oracle的编译
就这两个写法来说, in 的效率会高一点,但也有其他的办法,以提升效率:
select * from ID_CARD a where exists ( select 1 from id_temp b where a.id = b.id )