我想优化使用Access作为数据库的遗留应用程序。一些查询的问题是,运行几小时后他们没有返回任何东西。我试图通过逐个添加连接来找出问题。现在我碰到了一个查询,因为它没有返回任何东西并且永远不会执行。 查询在添加使用SubQueries获取数据的左连接之后的行为如下。
任何建议,将衷心感激..访问查询永远执行
Q
访问查询永远执行
0
A
回答
1
加入聚合列(MaxOfColumn
)可能无法正常工作。
我建议:将[qry Aggregate Query]
的结果插入临时表中。加入该表,而不是在有问题的查询中。
您可以使用SELECT INTO查询(以及事先删除旧的临时表)或INSERT INTO查询(并预先清空临时表)。
编辑
一旦你拥有了它的原理工作的,我建议使用追加查询(INSERT INTO)而不是生成表查询。
因此,您的临时表保持不变,您可以在用于JOIN的字段上添加索引,以进一步提高性能。
要打开主查询,然后你做VBA:
' Empty temp table
CurrentDb.Execute "DELETE * FROM Temptable"
' Run Append query
CurrentDb.Execute "NameOfYourAppendQuery"
' Open main query
DoCmd.OpenQuery "MainQuery"
1
尝试添加索引的表在这些列:
[tbl ASDT P1T_AGENT_STAFF] - (STF_END_EFF_DT)
[qry List ASDT tbl ASDT P1T_AGENT_STAFF Active MAX END DATE] - (maxOfSTF_END_EFF_DT)
虽然好像你甚至不使用此列,你已经拥有它可在maxOfSTF_END_EFF_DT
,那为什么要加入这张表?
相关问题
- 1. 复杂的MySQL查询永远执行
- 2. 查询永远运行ORACLE
- 3. 永远运行SELECT查询
- 4. 访问2013 - 查询包含ConcatRelated 50000项到永远
- 5. 我永远不会执行SQL安全查询吗?
- 6. 在mysql上的这个查询是永远执行
- 7. Facebook访问令牌永远?
- 8. MYSQL WHERE-IN子查询永远运行
- 9. MySQL的分页查询运行永远
- 10. NSTimer代码永远执行
- 11. “永远不会被执行”
- 12. 更新查询到永远
- 13. 访问终端以执行Android查询
- 14. 解析嵌套查询:内部查询永远不会行动
- 15. 连接到子查询的选择查询永远运行
- 16. MySql查询执行需要从PHP永远,但很快从phpMyAdmin运行完成
- 17. VBA查询未作为访问查询执行
- 18. 远程访问执行Android代码
- 19. 执行exec.Command(...)。等待()挂起永远
- 20. 永远不会执行的cron作业
- 21. 为什么setTimeout函数永远执行?
- 22. Java InputHandler永远不会执行
- 23. 代码将永远不会执行C
- 24. Facebook请求永远不会执行
- 25. 查询永远不会执行在mysql中 - 没有错误或超时
- 26. 彗星/长轮询/永远帧问题
- 27. 问题执行查询
- 28. 查询执行问题
- 29. 查询执行问题
- 30. 问题执行查询vb
@拉拉:做一些阅读,试一试。这并不难。查询类型:http://www.fmsinc.com/tpapers/queries/#Action_Queries。复制'[qry List ASDT tbl ASDT P1T_AGENT_STAFF Active MAX END DATE]',将其更改为** Make Table **查询。运行。相反,在主要查询中使用结果表。 – Andre
感谢您的链接Andre.I创建并运行Make Table.Now在查询中我应该如何加入'LEFT JOIN [MakeTableName] ON [tbl ADW] .H10_STAFF_PARTY_ID = [MakeTableName] .STF_STAFF_PARTY_ID)'。这是正确的方式吗? – Lara
@Lara:是的,无论你现在有哪些'[qry List ASDT tbl ASDT P1T_AGENT_STAFF Active MAX END DATE]',用'[MakeTableName]'代替它。 – Andre