ad

更快查询访问表的方法-英雄云拓展知识分享

匿名投稿 261 2024-01-22

我有两个访问表A和B:

Table A

Identifier BenefitBase PlanNav

更快查询访问表的方法-英雄云拓展知识分享

1 131368.46 131368.46

2 201768.8 201768.79

3 54057.46 54057.46

4 7397.51 7397.51

5 9931.4 9931.4

6 178200 178200

Table B

p ValidityDate LockInAmount

1 2016⑷ 3.82

2 2016⑷ 19.97

3 2016⑷ 26.85

4 2016⑹ 34.95

我只想创建一个查询,该查询从表A中从B中提取记录中提取记录。我当前的代码是:

SELECT B.p, B.ValidityDate, B.LockInAmount

FROM B

WHERE (((B.p) Not In (select Identifier from A)));

现在对我来讲,此代码应当很好。但是,由于表如此之大(B组成486,000行(在此表中重复“不同的日期”),而每次运行查询时,A包括一个大概19,000),访问填充了查询进度栏,但是靠近时冻结。

还有另外一种方法吗?

谢谢

看答案

您也能够使用左联接来做一样的事情Gustav所做的事情。我更容易浏览,我相信它将经过相同的履行计划运行。

select B.p, B.ValididtyDate, B.LockInAmount

from B

left join A on B.P = A.Identifier

where A.Identifier is null

并加上Erik上面推荐的索引。(也就是说,如果P和标识符是您表上的主要钥匙,那末它们已被索引,您不需要添加索引)


🚀🌟 点击注册 免费试用超级应用平台-英雄云企业级hpapaas 🌟🚀 😃👉🌐

免责声明:

本网址(www.yingxiongyun.com)发布的材料主要源于独立创作和网友匿名投稿。此处提的所有信息仅供参考之用。我们致力于提供准确且可信的信息,但不对材料的完整性或真实性作出任何保证。用户应自行验证相关信息的正确性,并对其决策承担全部责任。对于由于信息的错误、不准确或遗漏所造成的任何损失,本网址不承担任何法律责任。本网站所展示的所有内容,如文字、图像、标志、音频、视频、软件和程序等的版权均属于原创作者。如果任何组织或个人认为网站内容可能侵犯其知识产权,或包含不准确之处,请即刻联系我们进行相应处理。

标签:SQL MS-Access
上一篇:如何将图象alpha设置为正常-英雄云拓展知识分享
下一篇:为何OS在创建无穷的Java线程时击中-英雄云拓展知识分享
相关文章

 发表评论

暂时没有评论,来抢沙发吧~

×