如何(MySQL)乘以列然后总和行?

时间:2013-07-23 09:35:54

标签: mysql

我有这张桌子:

id    |   payment_id   | quantity  |  unit cost
1           633             1            750  
2           633             1            750 
3           632             2            750 
4           632             2            750 

我需要的是:

payemnt_id  |   total
    633           1500
    632           3000 

您也可以将此视为国家/地区,然后您尝试查找每个国家/地区的总数。我确信有一些像这样的教程但STFW无法找到。

4 个答案:

答案 0 :(得分:28)

您可以简单地将公式(表达式)放在SUM

SELECT payment_id, SUM(`unit cost` * quantity) AS total
FROM myTable
GROUP BY payment_id

答案 1 :(得分:2)

SELECT 
    payment_id, 
    SUM(subtotal) AS total
 FROM(
    SELECT
        payment_id,
        (unit_cost * quantity) AS subtotal
) AS t1
GROUP BY 
payment_id

答案 2 :(得分:1)

SELECT payemnt_id, SUM(`unit cost` * quantity) as total
FROM Table1
GROUP BY payemnt_id

答案 3 :(得分:0)

SELECT COALESCE (SUM(cost_field * quantity_field),0) AS tot FROM Table_Name    

我认为这个很好,为什么? 因为如果他们没有结果,它将给你零

相关问题