2014-12-19 63 views
-1

我正在處理關係型mysql數據庫的任務,我希望能夠使用我的表做一些數學計算。然而,在創建我的表格並嘗試各種查詢之後,我開始認爲我把這些關係搞砸了。我有四個表格,客戶,地址,訂單和產品。我的架構如下:關係型MySQL查詢來計算訂單總成本

enter image description here

我想用戶orders.o_qty繁殖在product.p_price和輸出值我一直在現在正試圖在一段時間內彙總,要麼我的表是鏈接錯誤地提起或我只是沒有得到它。

DDR.orderso_qty是數值,我一直在試圖使用此值在查詢p_price和輸出的合計值下乘以存儲在DDI.product值。

實例行可以在這裏找到:enter image description here

首先我一直在試圖找出總那麼我會進步到修改此查詢每位客戶總工作了。

+0

你還沒有明確表態什麼樣的行爲是正確的,所以很難回答給出的問題(或者確切地知道問題是什麼)。請爲每個表格提供示例行以及您希望生成的預期輸出。如果你有一個到目前爲止正在嘗試使用的SQL查詢,那麼也可以添加它。 – 2014-12-19 03:44:41

+0

因此,您只需要每個客戶的總數或總計/ – 2014-12-19 03:53:54

+0

首先,我一直在嘗試計算總數,然後我將進一步修改此查詢以計算每位客戶的總數。 – 2014-12-19 03:55:31

回答

0

這可以通過加入表格來完成。

案例1:顯示每用戶購買的用戶,即總總金額不向下鑽取每個產品

select c.c_id, 
c.c_fname, 
c.c_lname, 
sum(p.p_price) as total 
from orders o 
join customer c on c.cid = o.c_id 
join product p on p.p_id = o.p_id group by c.c_id; 

案例2:每個客戶購買的每個產品歇

select c.c_id, 
c.c_fname, 
c.c_lname, 
p.p_id, 
sum(p.p_price) as total 
from orders o 
join customer c on c.cid = o.c_id 
join product p on p.p_id = o.p_id 
group by c.c_id,p.p_id; 
+0

你可以使用總數爲'rollup',只需在group by子句後加上。 – 2014-12-19 04:21:14