我在数据库中有三个表,其中第一个表由客户的自由职业者部分第二个表和 3 个表组成,其中当客户选择自由职业者时,3 个表存储自由职业者的 id 和客户的 id。但是当我想检索客户选择的自由职业者的信息时,它会在标题中显示上述错误 这是我的查询
SELECT * FROM `freelancer_detail`
WHERE f_id = (select freelancer_id
from shortlisted_freelancers
where shortlisted_id =(SELECT postJob_id from client_detail
WHERE client_email = "joshua@gmail.com"))
最佳答案
如果另一个表中有多个值,请使用 IN 子句,
SELECT * FROM `freelancer_detail`
WHERE f_id in (select freelancer_id
from shortlisted_freelancers
where shortlisted_id in (SELECT postJob_id from client_detail
WHERE client_email = "joshua@gmail.com"))
关于sql - 如何解决子查询返回多于一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62040892/