我迷路了,需要至少3个表的复杂联接。

我有4个表格(配方,配方2提示,技巧和Tips2配方),其列名称如下:

食谱= ID,名称,说明,视频

recipes2tips = ID,食谱,小费

提示= ID,名称,说明,视频

tips2recipes = ID,小费,食谱

我正在尝试显示与每个食谱相关的所有技巧,而recipes.id将成为其中的重要因素。问题在于,所有的提示ID均与配方2tips.tip和tip2recipes.tip相等。

这是我的第一次尝试,但缺少一些东西:
PHP代码:[选择]

选择tips.id,tips.name,recipes2tips.recipe,recipes2tips.tip,recipes.id
从秘诀,秘诀2秘诀,秘诀
在哪里tips.id = recipes2tips.tip;

任何建议都很好。

谢谢

最佳答案

您在表上缺少联接条件。

如果使用正确的联接语法(带有on子句),则出错的可能性将大大降低:

SELECT tips.id, tips.name, recipes2tips.recipe, recipes2tips.tip, recipes.id
FROM tips join
     recipes2tips
     on tips.id = recipes2tips.tip
     recipes
     on recipes.id = recipes2tips.recipe ;

关于mysql - 连接3到4个MySQL表以显示2个字段,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17937194/

10-09 01:38
查看更多