Chinaunix

标题: 查询优化讨论:关于in和exists [打印本页]

作者: MicroHard    时间: 2005-07-06 09:48
标题: 查询优化讨论:关于in和exists
SQL语句中,子查询使用in和exists效率差异很大,有时用in快,有时用exists快,请教高手,如何决定应使用in还是exists
作者: xxyyy    时间: 2005-07-07 13:58
标题: 查询优化讨论:关于in和exists
关注。
作者: zzjijun    时间: 2005-07-07 17:50
标题: 查询优化讨论:关于in和exists
具体要看set explain on

比如有时候IN的字段是索引的,其实是走了索引的。
作者: MicroHard    时间: 2005-07-11 08:42
标题: 查询优化讨论:关于in和exists
select f1,f2,f3 from ta where ta.f1 in (select f1 from tb);
select f1,f2,f3 from ta where exists(select * from tb where tb.f1=ta.f1)
以上两条语句有什么差别吗?如果说索引利用,若ta.f1上有索引,则两条SQL都应能走索引吧?
作者: lmtok    时间: 2005-07-11 12:09
标题: 查询优化讨论:关于in和exists
楼上的说法不对,若ta.f1上有索引,只有查询1会走索引,
查询2不会使用ta的索引
作者: tyffly    时间: 2005-07-11 15:38
提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2