2012-11-05 41 views
0

我試圖選擇所有從下面的數據庫模式最低銷售員工:SQL選擇所有訂單的員工最低銷售

員工(ENO,ENAME,拉鍊,hdate)

部件(PNO,PNAME,庫存量,價格水平)

客戶(CNO,CNAME,街道,郵編,電話)

訂單(ONO,CNO,ENO,接收,發貨)

Odetails(ONO,PNO,數量)

郵編(ZIP,市)

我不能讓我工作,爲每名員工的銷售總額沒有錯誤的工作查詢。我的問題是獲得與員工相關的每個訂單的數量*價格。

回答

1

豈不是這樣的:

SELECT Employees.eno, Employees.ename, SUM(Odetails.qty * Parts.price) AS Sales 
FROM Employees JOIN 
Orders ON Employees.eno = Orders.eno JOIN 
Odetails ON Orders.ono = Odetails.ono JOIN 
Parts ON Parts.pno = Odetails.pno 
GROUP BY Employees.eno, Employees.ename 

上述選擇查詢(SQL服務器)將各自的ENO(猜員工數量),並與ENAME的總和一起返回的員工列表他們的數量與零件的價格相乘,那麼您將能夠確定最低銷售額的員工。您可以使用上面的select作爲派生表,然後按Sales列排序以查看哪些銷售量最少,次數最少,排名第三等的順序。我將聯接僅留爲「JOIN」,因爲我不知道您的數據庫,因爲它可能是INNER JOIN或OUTER JOIN。

希望這有助於隊友。

相關問題