gpt4 book ai didi

mysql - SQL 连接多个表

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

通过这样的语句,我可以获得食谱名称以及数量每一种都含有成分。

SELECT
r.name, COUNT(i.id) as num_ingredients
FROM recipes AS r
LEFT JOIN recipe_ingredients ON r.id = recipe_ingredients.recipe_id
LEFT JOIN ingredients AS i ON recipe_ingredients.ingredient_id = i.id
GROUP BY r.id

如何将 Chefs.name 与我已有的数据一起添加到我的 SELECT 中?

table schema

最佳答案

试试这个

SELECT
r.name, COUNT(i.id) as num_ingredients, che.name AS chefs_name
FROM recipes AS r
LEFT JOIN recipe_ingredients ON r.id = recipe_ingredients.recipe_id
LEFT JOIN ingredients AS i ON recipe_ingredients.ingredient_id = i.id
LEFT JOIN chefs AS che ON r.chef_id = che.id
GROUP BY r.id

如果我理解的话,您也想加入厨师 table 并选择其名称。

您必须在 SELECT 语句中为其指定别名,因为您选择了 2 个具有相同名称的列。

我还认为列 Recipes.chef_id 的数据类型应该与 Chefs.id 相同(都是 int(11) 或 int(255))。

关于mysql - SQL 连接多个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28203024/

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