![]() |
Datenbank: Firebird • Version: 1.5.3 • Zugriff über: ZEOS
SQL-Abfrage über 2 Tabellen
Hallo allerseits!
Ich lese im ersten Select aus der Buchungs-Tabelle die KundenNr aus und lese daraufhin aus der Kunden-Tabelle anhand der KundenNr die restlichen Kundendaten aus. Funktioniert ja bestens. Jetzt meine Frage: Kann man diese beiden Select zu einem einzigen zusammenfassen?
Delphi-Quellcode:
mfg
ZQ_Buchung.Close;
ZQ_Buchung.SQL.Text := 'SELECT * FROM BUCHUNG WHERE (DATUM = ' + QuotedStr(Datum) + ') AND (ZIMMERNR = ' + QuotedStr(ZimmerNr) + ')'; try ZQ_Buchung.Open; ZQ_Kunden.Close; ZQ_Kunden.SQL.Text := 'SELECT * FROM KUNDEN WHERE KUNDENNR = ' + ZQ_Buchung.FieldByName('KUNDENNR').AsString; try ZQ_Kunden.Open; except end; except end; Herbert |
Re: SQL-Abfrage über 2 Tabellen
Delphi-Quellcode:
ZQ_Buchung.SQL.Text :=
'SELECT * FROM BUCHUNG b, KUNDEN k WHERE (DATUM = :DATUM) AND ' + '(ZIMMERNR = :ZIMMERNR) AND (k.KUNDENNR = b.KUNDENNR)'; try ZQBuchung.Prepare; ZQBuchung.ParamByName('DATUM').AsDateTime := Datum; ZQBuchung.ParamByName('ZIMMERNR').AsString := ZimmerNr; ZQ_Buchung.Open; except end; |
Re: SQL-Abfrage über 2 Tabellen
oder auch
SQL-Code:
Das Buchung. vor Datum und Zimmernr kann man weglassen falls es diese Felder in der Tabelle Kunden nicht gibt
SELECT *
FROM BUCHUNG INNER JOIN KUNDEN ON BUCHUNG.KUNDENNR = KUNDEN.KUNDENNR WHERE BUCHUNG.DATUM = :Datum and BUCHUNG.ZIMMERNR = :Zimmernummer |
Re: SQL-Abfrage über 2 Tabellen
OK, danke vorerst mal für die raschen Antworten. Werde ich gleich mal probieren.
mfg Herbert |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:04 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