2012-03-22 83 views
2

我需要編寫一個查詢來創建一個視圖,該視圖通過考慮每個已購物品的數量和價格來計算每次銷售的總成本。該觀點應該返回借方和總成本。連接具有相同值的行的SQL查詢

在答案中,每個借記號只應出現一次。

在此先感謝

表項目:

ID  NAME  PRICE 
118  Jeans  100 
120  Towel  20 
127  Shirt  55 

表借方:

DEBIT  ITEM  Quantity 
100581 118  5 
100581 120  1 
100586 127  5 
+0

借方是出售編號? – 2012-03-22 11:35:02

+0

這些表格如何關聯?它是ITEM-> ID? – Slinky 2012-03-22 11:37:50

+0

我已經嘗試了以下內容:SELECT debid,(item.price * debit.quantity)AS「Total Price」FROM借方,item WHERE debit.item = item.id – mrjasmin 2012-03-22 11:40:36

回答

2

怎麼樣 -

SELECT DEBIT.DEBIT, SUM(`ITEM`.`PRICE` * `DEBIT`.`Quantity`) 
FROM `ITEM` 
INNER JOIN `DEBIT` 
    ON `ITEM`.`ID` = `DEBIT`.`ITEM` 
GROUP BY `DEBIT`.`DEBIT` 
+0

謝謝:)它的工作完美:) – mrjasmin 2012-03-22 11:52:21

+0

在這裏,我們通過接受我們使用的答案說謝謝。請接受@ Joachim的答案,因爲他正在努力設置演示。 – nnichols 2012-03-22 13:02:21

-2

像這樣的工作...

SELECT d.id,SUM(i.price*d.quantity) as total_cost 
FROM item i join debit d 
on i.id=d.item_id 
group by d.id; 
+0

您不想通過'i.price,d.quantity'進行分組。 – MatBailie 2012-03-22 11:42:25

+0

是啊..我知道..寫錯了.. !! – 2012-03-22 11:52:02

3

你可以用一個簡單的JOIN試試這個;

SELECT d.DEBIT, SUM(d.Quantity*i.Price) SUM 
FROM DEBIT d 
JOIN ITEM i ON d.ITEM=i.ID 
GROUP BY d.DEBIT; 

簡單演示here

+0

謝謝:)它的工作完美:) – mrjasmin 2012-03-22 11:51:57