access not in的问题

来源:百度知道 编辑:UC知道 时间:2024/05/16 21:45:37
在a表中,包含有落S_id字段及其它字段 在表B中也包含有S_ID字段及其它字段,现在我想把A表中s_id包含有B表中的s_id的数据查出来.是OK的.如下
select * from a where s_id in (select s_id from b)
但是,如果我想把A表中s_id不包含有B表中的s_id的数据查出来.就好像是进入死循环似的.如下:
select * from a where s_id not in (select s_id from b)
distinct 加了还是一个样!a表一万多条记录,B表有二三万多条吧

如果a表资料多,而b表资料少,
这个语句会执行时间长.
Access 数据库本来性能就不好.
如果用SQL2000就会好多了.

有这么多记录,我建议你转到SQL里去.

select * from a where s_id not in (select distinct s_id from b)

你表中数据量是不是太大?
不行的话,你可以给a表的s_id字段建上索引