组合2个表 - 子查询返回多于1行

Yah*_*hoo 0 mysql sql join phpmyadmin

当我加入2个表时,我收到一个错误

select * from picture where id=(SELECT id FROM user where age= 40 ) 
Run Code Online (Sandbox Code Playgroud)

#1242 - 子查询返回超过1行

加入这两个大数据表的最佳方法是什么?我希望得到所有结果

Luk*_*der 5

替换=IN

select * from picture where id in (select id from user where age = 40) 
Run Code Online (Sandbox Code Playgroud)

请注意,这只是"半连接"两个表,即您只能将图片作为结果,而不是图片用户关系.如果你真的想要做后者,那么你将需要inner join两个表:

select * from picture p
join user u on p.id = u.id -- are you sure about this join condition?
where u.age = 40
Run Code Online (Sandbox Code Playgroud)