我正在尝试组合一个MySQL查询来从特定表中选择和乘以两列。另外,如果第三列的值与任何其他行匹配,我希望查询添加每次乘法的结果。
该表包含以下列:id
,client_id
,project_id
,rate
和quantity
。
因此,每行寻找rate
乘以quantity
。如果每行具有相同的project_id
,则添加这些结果。
这是我到目前为止所做的:
SELECT rate * quantity AS total_price FROM orders WHERE client_id=1 GROUP BY project_id
这似乎让我接近,但并不是那么完整。它似乎将所有计算结果返回到一个大数组中,而不是将相关的结果添加到一起。更复杂的是,有几个项目具有相同的client_id
。
答案 0 :(得分:4)
只需添加Sum
汇总
SELECT project_id,
Sum(rate * quantity) AS total_price
FROM orders
WHERE client_id = 1
GROUP BY project_id
答案 1 :(得分:1)
SELECT sum(rate * quantity) AS total_price FROM orders WHERE client_id=1 GROUP BY project_id