Ich habe 4 Tabellen .... Mitarbeiter, Kunden, Bestellungen und Order_Info. Ich versuche, die 4 Tabellen innerlich zu verbinden, um die Bestellbeträge zusammenzufassen und die Mitarbeiterprovision basierend auf 7% zu berechnen. Ich bin sehr nah daran, das zu lösen, aber ich habe ein kleines Problem: Ich bekomme nicht alle Angestellten, weil weniger auftauchen als in meiner Employees Tabelle. Dies ist, wie ich zur Zeit meine Frage geschrieben:SQL 4 Tabellen innerer Join Abholsumme Nulls auch?
SELECT Employees.lName, Employees.fName,
SUM(quantOrdered * costEach) AS ttl_orders_value,
(SUM(quantOrdered * costEach) * .07) AS Commission
FROM Customers
INNER JOIN Employees ON Customers.empNumber = Employees.empNumber
INNER JOIN Orders ON Customers.custNumber = Orders.custNumber
INNER JOIN Order_Info ON Orders.ordNumber = Order_Info.ordNumber
GROUP BY Employees.lName, Employees.fName
ORDER BY Employees.lName, Employees.fName
Ich wünsche alle Mitarbeiter zu erhalten, auch wenn ihre Provision und einen Gesamtumsatz gleich Null, was ich glaube, von NULLS berechnet werden.
Jede Hilfe, die meine Abfrage verbessert, würde sehr geschätzt werden!
Versuchen Sie LEFT JOIN anstelle von INNER JOIN. – jarlh
Hat nicht funktioniert es gab mir eine zusätzliche Zeile mit NULL in jeder Spalte gefüllt. Es ist sogar null, wo die lName und fName sind ... – finiteloop
Fügen Sie einige Beispieltabellendaten und das aktuelle Ergebnis und das erwartete Ergebnis hinzu - alles als formatierten Text. – jarlh