Wir verwenden die folgende Abfrage, um 5 Tabellen zu verknüpfen. Bis zu 4 Tabellen funktionieren einwandfrei und das Ergebnis wird korrekt angezeigt. Nach dem Hinzufügen der Artikeltabelle werden jedoch mehr Zeilen angezeigt, als erforderlich sind, da der Artikelname für alle Bestellungen verwendet wird.
SELECT
CMP.CMPName,
OrderHeader.ID,
OrderHeader.Date,
Customer.Name,
OrderDetail.Qty,
ItemMaster.ItemName
FROM OrderHeader
INNER JOIN CMP ON Orders.CompanyID=Company.ID
INNER JOIN Customer ON OrderHeader.CustomerID=Customer.ID
INNER JOIN OrderDetail ON OrderHeader.OrderID=OrderDetail.OrderHeaderID
INNER JOIN ItemMaster ON OrderDetail.ItemID=ItemMaster.ID;
Antworten:
2 für die Antwort № 1Ich denke, Sie müssen überprüfen, ob alle Felder von
OrderDetail.ItemID
oder
ItemMaster.ID;
sind verschieden oder haben leere Werte. Das Verbinden zweier Felder mit leeren Werten führt zu nicht zuverlässigen Ergebnissen.