繁体   English   中英

SQL联接查询

[英]Sql joining query

我有一个查询

SELECT foodjoint_id FROM provider_food_joints WHERE foodjoint_name='".$foodjoint_name."'";

现在,我必须从另一个表中选择一个包含foodjoint_id的所有信息

SELECT * from menu_item where foodjoint_id = THOSE ID

我必须加入这两个查询

SELECT i.menu_item 
FROM menu_item i 
JOIN provided_food_joints pfj 
ON (pfj.id = i.foodjoin_id)
WHERE i.foodjoin_id = 5

基本上,这就是join语句的工作方式。 查看本教程以获取有关不同类型的联接的更多信息。

在你的情况-由最低点的建议- JOIN语句会更有用。

您可以在条件中使用IN子句:

SELECT * from menu_item where foodjoint_id IN (
    SELECT foodjoint_id FROM provider_food_joints WHERE foodjoint_name='".$foodjoint_name."'");

尝试这个

SELECT * from menu_item where foodjoint_id in( SELECT foodjoint_id FROM provider_food_joints WHERE foodjoint_name='".$foodjoint_name."'")
SELECT * FROM menu_item WHERE foodjoint_id = (SELECT foodjoint_id FROM provider_food_joints WHERE foodjoint_name='".$foodjoint_name."'");

希望这是您的要求吗? 或具体说明问题

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM