Hallo ich mache Schema für Kaufaufträge diese Aufträge können von bestimmten Benutzer bestellt werden und dann von einem anderen Benutzer erhalten.Abrufen von Datensätzen aus mehreren Tabellen Ausgabe
Das Problem liegt vor, wenn der Benutzer-ID-Wert in der Deliveries-Tabelle null ist und die Abfrage keine Datensätze zurückgibt.
UserID-Wert ist null, weil die Bestellung noch nicht übermittelt wurde.
Abfrage
SELECT pu.FirstName as purchase_FirstName, pu.LastName as purchase_LastName,
du.FirstName as delivery_FirstName, du.LastName as delivery_LastName,
po.PurchaseOrderDate,
d.ExpectedDeliveryDate, d.ActualDeliveryDate
FROM dbo.PurchaseOrders po JOIN
dbo.Deliveries d
ON po.PurchaseOrderID = d.PurchaseOrderID JOIN
dbo.Users pu
ON po.UserID = pu.UserID JOIN
dbo.Users du
ON d.UserId = du.UserId;
Schema
Setzen Sie also eine Bedingung WHERE UserID ist nicht NULL. Oder wenn Sie sie einschließen möchten, können Sie tun, wo Benutzer-ID null ist. Sie müssen Ihren Join auch zu einem linken Join ändern, wenn Sie den Datensatz weiterhin verwenden möchten. – JonH
Wird ein 'left join' auf den' Deliveries' den Trick machen? –