2012-07-09 85 views
0

嗨可以說我有這樣的一個表:獲取包含相同的另一列所有MySQL列

________________________________________________________ 
| 
| id  |  order | date | item | price| 
------------------------------------------------------- 
|  1   1st  date  i1  10,00| 
|-------------------------------------------------------  
|  2   2nd  date  u2  15,00| 
|------------------------------------------------------- 
|  3   1st  date  i1  20,00| 
|------------------------------------------------------- 
|  4   2nd  date  u2  30,00| 
|------------------------------------------------------- 

我需要得到含有相同的順序名稱項目總金額並打印DISTINCT訂單,如:

order_name - 日期 - 總額。或更好的方式來創建新的表格和存儲每個訂單的總和,並在此表中添加每行的總和ID?

+1

日期在哪? – xdazz 2012-07-09 14:38:19

+0

編輯,對不起忘了加 – 2012-07-09 14:40:31

回答

1

這將真正地返回order_name - date - total sum,假設你datedate

SELECT CONCAT(order, " - ", date, " - ", SUM(price)) as Result 
FROM orders 
GROUP BY `order` 

要增加數量,試試這個:

SELECT CONCAT(order, " - ", date, " - ", CASE WHEN quantity > 1 THEN (quantity * SUM(price)) ELSE SUM(price) END) as Result 
FROM orders 
GROUP BY `order` 
+0

工作完美。如果它有數量,有一種方法可以乘以項目? – 2012-07-09 15:01:30

+0

嘗試上面的第二個塊。我沒有嘗試過,但它應該工作。 – 2012-07-09 15:06:34

+0

太棒了!現在我有問題打印結果在PHP中,我應該使用或不使用?謝謝 – 2012-07-09 15:20:26

相關問題