我有这些表
订单
- 订单_id
- order_article_id
- 订单_语音_id
- 订单_客户id
- 订单_数量
文章
- 文章id
- 文章名称
- 文章_数量
- 文章_价格
- 文章_装载
客户
- 客户id
- 客户名称
- 客户位置
- 客户办公室
和SQL联接表
$sql="SELECT customer_name, article_name, orders_id FROM orders
LEFT JOIN articles ON order_article_id = articles_id
LEFT JOIN customers on order_customer_id = customers_id";
从这个查询中,我需要获得AMOUNT。金额是的示例
用户:MICHAEL
金额:订单ID=ORDER_article_ID+订单数量
有可能在MySQL中做到这一点吗?或者我需要一些额外的PHP代码?
您可以在MySQL中使用GROUP BY查询和SUM()聚合函数来完成此操作:
SELECT
c.customer_name,
SUM(a.article_price*a.article_quantity) AS amount
FROM
orders o LEFT JOIN articles a
ON o.order_article_id = a.articles_id
LEFT JOIN customers c
ON o.order_customer_id = c.customers_id
GROUP BY
c.customers_id,
c.customer_name
您可能想要获得每个订单的AMOUNT,然后还需要根据order_id:进行分组
GROUP BY
o.orders_id,
c.customers_id,
c.customer_name