gpt4 book ai didi

mysql - 使用连接表中的值进行计算

转载 作者:行者123 更新时间:2023-11-29 07:03:05 24 4
gpt4 key购买 nike

我有以下表格,我想计算其中的卡路里总量和价格。

蛋糕:

| id | cake      | description |
| 1 | chocolate | |

食谱:

| id | cake_id | ingredient_id |
| 1 | 1 | 1 |
| 2 | 1 | 2 |

成分:

| id | ingredient | calories | buy_price | sell_price |
| 1 | Chocolate | 200 | 12.22 | 14.00 |
| 2 | Sugar | 300 | 10.50 | 11.50 |

因此预期结果将是卡路里 => 500buy_price => 22.72sell_price => 15.50

我已经尝试过以下查询,但没有成功。

SELECT `c`.`id`, `cake`, `description`
FROM `cakes` `c`
JOIN `recipes` `r`
ON `c`.`id` = `r`.`cakes_id`
CROSS JOIN (
SELECT `calories`, `buy_price`, `sell_price`
FROM `ingredients` `i`
WHERE `i`.`id` = `r`.`ingredients_id`
) `ingredients`

它给了我一个错误,r`.`ingredients_id 未知,我可以理解,但我不知道如何修复它。但这仍然给我留下了如何计算这些值的问题。

希望有人能帮我解决这个问题。

最佳答案

您可以尝试以下查询吗:

SELECT c.id, SUM(i.calories), SUM(i.buy_price), SUM(i.sell_price)
FROM cake c
JOIN recipe r ON c.id = r.cake_id
JOIN ingredients i ON r.ingredient_id = i.id
GROUP BY c.id;

关于mysql - 使用连接表中的值进行计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42678288/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com