Einzelnen Beitrag anzeigen

Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#4

AW: SQL-Abfrage über n-m-Beziehung

  Alt 18. Sep 2015, 13:10
SQL-Code:
select distinct GERICHT.Gericht
from GERICHT join GERICHT_BEILAGE GB1 on (GERICHT.ID=GB1.GerichtID)
             join BEILAGE B1 on (GB1.BeilageID=B1.ID and B1.Beilage='Kartoffeln')
             join GERICHT_BEILAGE GB2 on (GERICHT.ID=GB2.GerichtID)
             join BEILAGE B2 on (GB2.BeilageID=B1.ID and B2.Beilage='Reis')
so sollte es gehen.
Alternativ könnte man auch exists verwenden, aber das ist etwas langsamer, je nach verwendeter DB.

Gruß
K-H

P.S.
Spätestens wenn nach ein paar Monaten eine solche Abfrage nochmals angeschaut wird, fragt man sich "und was steckt hinter ID=2?"
Darum sollte man solche Verkürzungen meiden wann immer es geht, oder einen Kommentar dazu schreiben.
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector

Geändert von p80286 (18. Sep 2015 um 13:15 Uhr)
  Mit Zitat antworten Zitat