Mysql 将两个查询合并为一个

Mysql merging two queries into one

尝试以最“correct/efficient”的方式将以下两个查询合并为一个:

select id from TABLE1 where apple='green'
while{
select * from TABLE2 where id=[id from TABLE1 above]
while{

例如,查询一将 return 多个 ID,而这些 ID 又将 return 查询二中的许多行。

你可以尝试使用EXISTS子查询

SELECT * 
FROM TABLE2 t2
WHERE EXISTS(
    SELECT 1 
    FROM TABLE1 t1
    WHERE t1.apple='green' AND t1.id = t2.id
)