MySQL在具有逻辑OR的另一个查询中使用select查询结果

时间:2017-04-10 13:29:54

标签: mysql

需要一些帮助才能构建此查询。

Q1 = select fruits from tableA;

结果:苹果,香蕉,橙色

Q2 = select * from tableB where (fruitname = 'apple' OR fruitname = 'banana' OR fruitname = 'orange');

如何将上述查询合并到一个查询中? 运行组合查询与2个单独查询是否有效。

脚本是用PHP编写的。

谢谢。

3 个答案:

答案 0 :(得分:2)

使用JOIN获得更有效的结果:

SELECT b.*
FROM tableB b
JOIN tableA a
ON b.fruitname = a.fruits

答案 1 :(得分:1)

select * from tableB where fruitname IN (select fruits from tableA)

为了提高效率,请尝试自己=)

答案 2 :(得分:0)

试试这个:

select * from tableB where fruitname IN (select fruits from tableA);