SQL-Zugriff auf 3 bzw. 4 Tabellen
waholin
Gesendet: 22.12.17 11:04
Betreff: SQL-Zugriff auf 3 bzw. 4 Tabellen


Regular

Beiträge: 67
2525
Hallo,

und jetzt komme ich noch vor Weihnachten
habe 4 Tabellen:
tblOrder(Z), tblPosition(X), tblPosMat(M), tblPosGer(G)

zu einer Order(Z) gibt es n Positionen (OrderNr)
zu einer Position(X) gibt es 0 - n Einträge in (M) (PosID) aber auch
zu einer Position(X) gibt es 0 - n Einträge in (G) (PosID)

Ich habe versucht, das Ganze mit Hilfe von Joins zu verwirklichen, was mir nach mehreren verzweifelten Versuchen leider nicht gelang. Ich versuchte daraufhin 2 Abfragen mit UNION zu verbinden (s. nachstehenden Code). Dies bringt dann zwar das richtige Ergebnis; ich würde aber gerne die Verbindung mit UNION vermeiden. Gibt es hierfür eine Möglichkeit?
Ich möchte also für jede Verknüpfung, welche es von den Positionen(X) zu (M) oder (G) gibt, einen Datensatz erstellen. Dabei sollte dann noch der Ordnungsbegriff in den Positionen (OrderNr) mit einem vorgegebenen Wert dem des Primärschlüssels in der Tabelle (Z) entsprechen.


CODE:

SELECT Z.Ordernr, X.Posnr, M.posid, M.Menge AS felda, M.matid AS feldb
FROM (tblPosition AS X INNER JOIN tblPosMat AS M ON X.posid = M.posid)

INNER JOIN

tblOrder AS Z
ON X.OrderNr = Z.Ordernr
WHERE z.OrderNr = 698

UNION

SELECT Z.Ordernr, X.Posnr, g.posid, g.Dauer as felda, g.gerid as feldb
FROM (tblPosition AS X INNER JOIN tblPosGer AS G ON X.posid = g.posid)

INNER JOIN

tblOrder AS Z
ON X.OrderNr = Z.Ordernr
WHERE Z.OrderNr = 698

Ich freue mich auf eine Antwort von Euch.

Liebe Grüße
waholin
Top of the page Bottom of the page