Das Problem ist ja, dass die Abfrage mit where extrem langsam wird, weil er zuerst die Riesentabelle aufbaut und danach selektiert.
Mit der ON Klausel wird der eine Datensatz gleich beim Join herausselektiert, weil die linke Tabelle nur aus einem Datensatz besteht, und nur dieses kleine Ergebnis wird mit einer Reihe von anderen Tabellen gejoint. Bei einem brauchbaren
Query-Optimierer, wie ihn jede halbwegs moderne
SQL Datenabnk hat, wäre das ganze Theater nicht nötig.
Ich gehe davon aus, dass eine neuere
Access-Version das besser machen würde, aber die Umstellung des ganzen Delphi-5 Projekts auf eine neue
Access-Version ist mir zu viel Aufwand.