访问SQL查询响应速度非常慢

问题描述:

我使用MS Access 2007中使用C#,我试图执行下面的查询..访问SQL查询响应速度非常慢

我的表有三列WordPOSFreq,拥有独特的记录。总记录数是“数百万条记录”。

此查询工作正常,我和回报,我希望所有正确的结果:

Select Word, POS, Freq from TName Where Word **IN** (SELECT Word from TName      Group By Word Having Count(*) > 1) Order By Word; 

但是,当我尝试以下类似的查询(在EXE),然后系统停止响应。

Select Word, POS, Freq from TName Where Word **NOT IN** (SELECT Word from TName      Group By Word Having Count(*) > 1) Order By Word; 

我也是在MS Access查询面板尝试了第二SQL命令和MS Access停止响应,但非常非常缓慢返回结果。

请帮我...

既然你在访问的时候,你可以只让中选择自己的查询,然后只需使用普通的JOIN。

查询WordCounts

SELECT Word from TName Group By Word Having Count(*) > 1 

你的最终查询:

SELECT Word, POS, Freq from TName 
INNER JOIN WordCounts ON TName.Word = WordCounts.Word 

创建嵌套查询从TNAME集团由Word说QryWordsThatAppearMoreThanOnce 选择Word有COUNT(*)> 1

然后加入

Select n.Word, n.POS, n.Freq from TName n 
inner join QryWordsThatAppearMoreThanOnce q On q.Word = n.Word 
Order By n.Word 

另一个是

Select n.Word, n.POS, n.Freq from TName n 
Left join QryWordsThatAppearMoreThanOnce q On q.Word = n.Word 
and q.Word is null 
Order By n.Word 

类似的东西,无论如何,一些接入怪事开始发挥作用的可能性。