首先不能用子查询,这样会很慢很慢。
用外连接的关联查询代替not in
如下:
select a.* from gkbmk a left join gktjk b on a.bmh = b.bmh
where b.bmh is null;
如果不了解外连接,先了解一下吧,呵呵。
索引适当加一点,就可以了,我的句子已经是最佳优化了,你可以在上面加入你需要的条件。
建索引,
gkbmk和gktjk两个表,各加3个索引
1、bmd的索引
2、yhdy的索引
3、gknf的索引
sql server 2005中有个,优化向导,可以优化sql语句,你把你的sql代码贴到里面,运行下优化向导,按它给出的建议做吧
http://sishuok.com/forum/posts/list/2094.html
别用子查询,