调整多个联接的SQL联接性能

调整多个联接的SQL联接性能,sql,performance,join,Sql,Performance,Join,因此,我得到了下面的表关系,我正试图在Access 2010中实现一个“搜索表单”。为此,我正在尝试将所有信息显示在下图所示的代码中 但是,由于连接(我猜)的原因,性能非常差。 我试图收集有关如何调整我的性能的信息,但失败了。 我希望这里有人能帮我 非常感谢。 谢谢 选择distincttblauftraege.id_auftraege, tblkunde.kdnr, tblkunde.nachname, tblhauptgruppe.hauptgruppe, tblkonto.konto

因此,我得到了下面的表关系,我正试图在Access 2010中实现一个“搜索表单”。为此,我正在尝试将所有信息显示在下图所示的代码中

但是,由于连接(我猜)的原因,性能非常差。 我试图收集有关如何调整我的性能的信息,但失败了。 我希望这里有人能帮我

非常感谢。 谢谢

选择distincttblauftraege.id_auftraege,
tblkunde.kdnr,
tblkunde.nachname,
tblhauptgruppe.hauptgruppe,
tblkonto.konto
来自(tblhauptgruppe
内部连接(tbluntergruppe
内接缝液化管道
ONtbluntergruppe.id\u untergruppe=
tblprozesspunkt.untergruppe_fk)
ONtblhauptgruppe.id\u hauptgruppe=
tbluntergruppe.hauptgruppe_fk)
内部连接(TBLKON)
内部连接((待定)
内接缝Lauftraege
ONtblkunde.kdnr=tblauftraege.kdnr_fk)
内部连接(TBLARBEITSCHRITTE
内接缝BlzuordNung_kontoarbeitschrite
打开
tblarbeitschritte.id_arbeitsschritte=
tblzuordnung_kontoarbeitschrite.arbeitsschrite_fk)
ONtblauftraege.id_auftraege=tblarbeitschritte.auftrag_fk)
打开(tblkunde.kdnr=tblkonto.kdnr_fk)
和(tblkonto.id_konto)=
tblzuordnung_kontoarbeitschrite.konto_fk)
ONtblprozesspunkt.id\u prozesspunkt=
tblarbeitschritte.prozesspunkt_fk;

您能发布解释查询的结果吗?作业(auftrag)总是指一个且仅指一个客户。另一方面,一个客户(kunde)可以有多个银行账户(konto)为某个客户(kunde)创建作业(auftrat)时,您不仅可以添加任务(hauptgruppen),还可以为这些特定任务(hauptgruppen)分配银行账户(konto)。通过查询,您可以查看所有客户的所有作业以及他们在银行帐户中的任务。duck先生的第19份工作在2001年和2002年的账目中都是“auszahlung ablöse”。很抱歉通常,RDBMS中有一个函数,可以显示RDBMS执行查询时发生的情况。我不知道Access中是否有类似的东西,或者它的名称是什么,但在其他系统中,他们将其命名为“解释”。嗯。试图谷歌,似乎它不存在的访问一般来说,访问功能似乎很差我认为er数据库模型(第一篇文章中的链接)和我的查询(第一篇文章中的代码)可能足以帮助我。无论如何,谢谢你,伙计。通常我看到所有的东西都被连接起来了,没有真正的过滤器。如果您在其中一个表中进行筛选并稍后加入,可能会更快。