Ich habe ein Problem mit einer Abfrage, die doppelte Zeilen für den Primärschlüssel (TransactionID) zeigt, wird direkt aus der adventureWorks-Datenbank entnommen. Grundsätzlich gibt es mehrere Transaktions-IDs für eine bestimmte Transaktion, weil sie mehr als eine Sache gekauft haben, ich versuche nur eine davon zu zeigen und die Summe zusammenzufassen, aber ich kann es nicht tun.Sql Server summieren mehrere Transaktionen durch eine einzige transactionID
SELECT
AdventureWorks2014.Sales.SalesOrderHeader.SalesOrderID AS TransactionID,
AdventureWorks2014.Sales.SalesOrderHeader.OrderDate,
AdventureWorks2014.Sales.SalesOrderDetail.ProductID,
AdventureWorks2014.Sales.SalesOrderHeader.TerritoryID,
AdventureWorks2014.Sales.SalesOrderDetail.UnitPrice,
AdventureWorks2014.Sales.SalesOrderDetail.OrderQty,
SUM(AdventureWorks2014.Sales.SalesOrderDetail.UnitPrice * AdventureWorks2014.Sales.SalesOrderDetail.OrderQty) AS Total
FROM AdventureWorks2014.Sales.SalesOrderHeader
INNER JOIN AdventureWorks2014.Sales.SalesOrderDetail
ON AdventureWorks2014.Sales.SalesOrderHeader.SalesOrderID = AdventureWorks2014.Sales.SalesOrderDetail.SalesOrderID
GROUP BY AdventureWorks2014.Sales.SalesOrderHeader.SalesOrderID,
AdventureWorks2014.Sales.SalesOrderHeader.OrderDate,
AdventureWorks2014.Sales.SalesOrderDetail.ProductID,
AdventureWorks2014.Sales.SalesOrderHeader.TerritoryID,
AdventureWorks2014.Sales.SalesOrderDetail.UnitPrice,
AdventureWorks2014.Sales.SalesOrderDetail.OrderQty
ORDER BY SalesOrderHeader.SalesOrderID ASC
ich folgendes Ergebnis:
43659 2011-05-31 00:00:00.000 712 5 5,1865 2 10,373
43659 2011-05-31 00:00:00.000 709 5 5,70 6 34,20
43659 2011-05-31 00:00:00.000 771 5 2039,994 1 2039,994
etc.
Ergebnisdaten klar angeben – Mansoor