【发布时间】:2021-05-21 01:25:03
【问题描述】:
我需要使用 MySQL 查询从实际价值价格和出货量以及订单数量中获取订单的利润。
请帮助使用连接查询查找结果。订单表是订单数据的主表,库存表是我们的价格。运费用于计算订单运费
为了查看价格细节,我们需要得到我们的价格和用户订购的数量以及运费
表:order-列出订单数据的主表
| order_id | name | order_amount | TOTAL |
|---|---|---|---|
| 125 | Sunil | 125 | 128 |
| 126 | Kurian | 225 | 129 |
表格:order_item - 单个订单商品详情
| order_id | product_id | quantity | TOTAL |
|---|---|---|---|
| 125 | 12 | 2 | |
| 125 | 13 | 1 |
表:库存(个别产品实际价格)
| product_id | price | itemcode |
|---|---|---|
| 12 | 30 | IKJH |
| 13 | 40 | JUSWK |
shipping_table 运费。因为有机会在多个表格中添加相同金额的运费。我只需要一个订单的一个值
| order_id | charge | itemcode |
|---|---|---|
| 125 | 5 | IKJH |
| 125 | 5 | IKJH |
预期输出
| order_id | order_price | actual_price |
|---|---|---|
| 125 | 125 | 105 |
我尝试了以下查询,但结果错误。
SELECT a.created_on ,
a.order_id,
a.order_amount,
sum(c.price*b.quantity),
FROM `order` AS `a`
INNER JOIN `order_item` AS `b` ON `a`.`order_id` = `b`.`order_id`
INNER JOIN `inventory` AS `c` ON `b`.`product_id` = `c`.`product_id`
INNER JOIN shipping_table AS d ON d.order_id = a.order_id
在哪里a.order_id = 125
GROUP BY a.order_id
ORDER BY a.order_id
【问题讨论】:
-
显示示例数据的所需输出。
标签: mysql sql join inner-join