Thema: Delphi sql

Einzelnen Beitrag anzeigen

Benutzerbild von Leuselator
Leuselator

Registriert seit: 18. Mär 2003
Ort: Berlin
589 Beiträge
 
Delphi 8 Architect
 
#8

Re: sql

  Alt 1. Dez 2003, 22:51
mir ist immer noch nicht ganz klar, was Du mit
Zitat:
2 Querys referentiell verknüpfen
meinst. Kenne Referentielle Bezüge/Integritäten zwischen Tabellen einer DB, nicht jedoch zwischen 2 Querys/Abfragen. Aber vielleicht hab ich nur mal wieder 'nen Knoten im Kopf.
Also wenn ich nicht irre möchtest Du sowas: (?)
SQL-Code:
         SELECT MA.id_Motorart
                 ,MA.Motorart
                 ,TS.id_Typenschild
-- ,TS.sid_Motorart -- unnötig, da gleich MA.id_Motorart
-- ,sid_Fabrikat -- dto. FB.id_Fabrikat
                 ,TS.Typ -- auf Deinem Plan nicht zu sehen aus welcher Tabelle
                 ,TS.Drehzahl -- dto. (eventuell Tabellen-Präfix berichtigen)
                 ,TS.Motornummer -- dto.
                 ,TS.Leistung_KW -- dto.
                 ,FB.id_Fabrikat
                 ,FB.Fabrikat
                 ,WD.id_Wickeldaten
                 ,WA.id_Wicklungsart
                 ,WA.Wicklungsart

           FROM tbl_Motorart MA
     INNER JOIN tbl_Typenschild TS
             ON TS.sid_Motorart = MA.id_Motorart
     INNER JOIN tbl_Fabrikat FB
             ON FB.id_Fabrikat = MA.sid_Fabrikat
-- die nexten Tabellen als left outer, weil ich davon ausgehe, dass nicht zu jedem Typenschild
-- zwingend ein Eintrag in tbl_Wickeldaten existiert wenn doch, dann kannst Du sie auch
-- inner joinen:
LEFT OUTER JOIN tbl_Wickeldaten WD
             ON WD.sid_TypenSchild = TS.id_TypenSchild
LEFT OUTER JOIN tbl_WicklungsArt WA
             ON WA.id_WicklungsArt = WD.sid_WicklungsArt

     WHERE (TS.Typ like :p1) -- Tabellenpräfixe checken und ggF. anpassen
        OR (TS.Fabrikat like :p1)
        OR (TS.Drehzahl like :p1)
        OR (TS.Motornummer like :p1)
        OR (TS.Leistung_KW like :p1)
Das sollte schnuckeln...
Gruß

Edit: PS: ich habegerade gesehen, das die WickeldatenQuery in Deiner Text.rtf falsch ist - das letzte Komma vor dem FROM ist zuviel (beliebter Fehler - deshalb habe ich mir die Schreibweise mit vorangestelltem Komma (s.o.) angewöhnt, da man so mit cut&paste Spalten vertauschen kann, ohne Stress zu bekommen)
Tim Leuschner
Programmierer = moderner Sysiphos: stets wenn er meint, den Stein seiner Dummheit auf den Berg des Wissens gewuchtet zu haben, erblickt er einen völlig neuen Aspekt und der Dummfels poltert mit Getöse zurück ins Tal der Unwissenheit...
  Mit Zitat antworten Zitat