Thema: Frage zu JOIN

Einzelnen Beitrag anzeigen

harfes

Registriert seit: 25. Jun 2006
Ort: Rand der Scheibe
176 Beiträge
 
Delphi 11 Alexandria
 
#13

AW: Frage zu JOIN

  Alt 27. Jan 2017, 08:42
Ja, jedes Feld, zu der eine Einheit gehört, kann eine andere Einheit haben (Verpackungseinheit=1 Karton, Verbrauchseinheit=1 Stück, etc.) - daher muss ich die Einheit immer wieder abfragen. Meine (unelegante, aber funktionierende) Lösung:
Delphi-Quellcode:
with DM1.DataModule1.IBCArtQuery do
    begin
        Close;
        SQL.Clear;
        SQL.Add('select A.*,E.EINHEIT as EE,F.EINHEIT as EF,G.EINHEIT as EG,H.EINHEIT as EH,W.WARENGRUPPE as WG,L.FIRMA,L.KREDITORENNR,Z.BEZEICHNUNG as LP ');
        SQL.Add('from ARTIKEL A ');
        SQL.Add('left outer join EINHEITDB E on A.VERPEINHEIT=E.EID ');
        SQL.Add('left outer join EINHEITDB F on A.VERBRAUEINHEIT=F.EID ');
        SQL.Add('left outer join EINHEITDB G on A.LAGBESTEINHEIT=G.EID ');
        SQL.Add('left outer join EINHEITDB H on A.MINBESTEINHEIT=H.EID ');
        SQL.Add('left outer join WARENGRUPPEDB W on A.WARENGRUPPE=W.WID ');
        SQL.Add('left outer join LIEFERANT L on A.LIEFERANT1=L.LID ');
        SQL.Add('left outer join LAGERPLATZ Z on A.LAGERPLATZID=Z.LPID ');
        ExecSQL;
    end;
Nochmal: mir ging es darum, eine elegantere Abfrage zu generieren...aber offensichtlich muss das wohl so gehen (und tut es ja auch!). Danke für euren Input!!!

Hartmut
Hartmut

Geändert von TBx (27. Jan 2017 um 09:00 Uhr) Grund: Delphi-Tags eingefügt
  Mit Zitat antworten Zitat