![]() |
Re: SELECT JOIN MIN richtig kombinieren?
Danke auch an Thorsten: das ist der vernünftige Weg für die Verknüpfung über JOIN.
Ergänzende Hinweise: StrVerz und PF-Verz sind smallint-Werte mit Inhalt 0/1/2, PLZ-Art sind int-Werte mit Inhalt 1...7. Damit alle Daten ausgelesen werden (siehe die Größenordnungen in meinem Beitrag #9), musste ich die Prüfung auf PLZ-Art in das SubSelect einfügen. Der folgende Befehl ist jetzt meine endgültige Version (ergänzt um den zweiten JOIN und alle verwendeten Felder):
SQL-Code:
Da dieser View immer wieder einmal ausgeführt werden soll, möchte ich es - soweit nötig - noch optimieren. Da ich auch mit Ausführungsplänen noch keine Erfahrung habe, bitte ich hier um Hilfe.
SELECT oa.Alort,
Ort.Name_lang, Ort.Name_kurz, Ort.Zusatz, Ort.Zusatz_art, oa.Name_kurz as NAME, oa.Status, p1.PLZ, p1.Plz_art, p1.Strverz, p1.Pf_verz, Ort.Kgs FROM Orte2 oa INNER JOIN (SELECT PLZ, Alort, PLZ_Art, StrVerz, PF_Verz FROM PLZ p2 WHERE PLZ = (SELECT MIN(PLZ) FROM PLZ WHERE Alort = p2.Alort AND PLZ_Art >= 6) ) p1 ON p1.Alort = oa.Alort JOIN Ort ON Ort.Id = oa.Alort ![]() Zitat:
Wenn ich das SELECT als VIEW registriere: ist es sinnvoll/möglich/nötig, den "Adapted plan" per PLAN-Klausel hinzuzufügen? Danke für diese weiteren Hinweise! Jürgen |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:18 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz