2

我在 MS Access 中有一个查询,在where子句中我有:

WHERE (((tb_KonzeptFunktionen.Konzept)=[Formulare]![frm_Fahrzeug]![ID]));

运行需要很长时间,但是当我删除此where子句时,查询运行不到一秒。

我可以说传递[Formulare]![frm_Fahrzeug]![ID]作为参数没有效率吗?或者查找控制值会减慢速度?如果是,我该如何解决这个问题?

4

1 回答 1

1

db 引擎应该几乎立即检索控件的值。如果该WHERE条件显着降低了查询速度,则很可能是由于数据库引擎必须执行额外的工作来检索匹配的行。您可以通过暂时用静态已知值代替控件的值来检查此假设。

WHERE tb_KonzeptFunktionen.Konzept=1;

如果带有静态值的版本同样慢,请创建索引并重tb_KonzeptFunktionen.Konzept试。

于 2012-05-29T07:54:07.973 回答