عرض سلام و ادب
تو سایت W۳SCHOOL میخواستم دوتا جدولی که JOIN کردم، همراه با تمام مشخصات سفارش، در ستون Quantity به جای اینکه تعداد هر محصول در هر سفارش در یک سطر جداگانه نشان داده بشه، مجموع تعداد محصولات یک سفارش یکجا در یک سطر نشون داده بشه.از کوئری زیر استفاده کردم ولی فکر می کنم اصولی نیست و باید روش بهتر و خلاصه تری داشته باشه، ممنون میشم کمک کنید.
کوئری من:
SELECT
OrderDetails.OrderDetailID,
OrderDetails.OrderID,
Orders.CustomerID,
Orders.EmployeeID,
Orders.OrderDate,
Orders.ShipperID,
SUM(Quantity) AS Total_quantity_in_each_order
FROM OrderDetails JOIN Orders
ON OrderDetails.OrderID = Orders.OrderID
GROUP BY Orders.OrderID;
سلام و احترام
کوئریتون درسته، شاید شلوغیش به خاطر فیلدهایی که select کردید و گرنه کوئری داره درست کار میکنه
SELECT *, SUM(OrderDetails.Quantity) AS Total_quantity_in_each_order
FROM OrderDetails
JOIN Orders ON OrderDetails.OrderID = Orders.OrderID
GROUP BY Orders.OrderID;
آقای صالحی تو استک اورفلو سوالمو مطرح کردم این جواب رو دادن، کار هم میکنه
SELECT o.*,
SUM(od.Quantity) AS Total_quantity_in_each_order
FROM Orders o JOIN
OrderDetails od
ON od.OrderID = o.OrderID
GROUP BY o.OrderID;
فقط یه چیزی که داخل این کد متوجه نمیشم اینه که منظور از *.o و od.OrderID = o.OrderID چیه؟
متن کامل جوابه هم اینجاست