跨工作表Sql查询需要时间吗?

时间:2015-03-18 17:10:39

标签: sql vba excel-vba excel

我在一张A中有大约1万条记录(行),在表B中有大约一千条记录(行)。两条记录都有5列。我需要使用列过滤器过滤工作表A,然后使用两个工作表中的ID查找工作表B上没有的所有内容。例如:工作表A有1万,应用过滤器,它到1200.现在选择不在工作表B中的记录。我已经为它写了一个查询。

  rs.Open "SELECT * FROM [A$] WHERE ([Class]<>'Other' OR...) AND ([Sub Class]='Good' OR...) AND [ID] NOT IN (SELECT [B$].ID FROM [B$])"

查询运行速度非常慢,我不知道我是否会在等待数小时内得到任何答案,也可能是错误的。我查了一下,发现如果我排除了最后一个AND,那么查询会在一秒钟内执行。任何帮助表示赞赏。感谢。

1 个答案:

答案 0 :(得分:1)

如果您不查询数据库,为什么要在Excel工作簿中使用SQL查询?不会VLOOKUP更简单吗?