mysqli内连接:其他表中不存在数据

时间:2017-06-09 05:47:58

标签: mysql

我有3个表,我使用内连接从表中获取数据。

 select b.pic,b.fname,b.lname, a.job_id, a.uid, a.job_title, a.description, a.city, a.position, 
        a.salary, a.looking_for,a.website,a.date
   from job_posting a 
  inner join users b
  inner join job_applied c on a.uid = b.uid and b.uid = c.uid
  where c.job_id IS NULL and c.uid IS NULL and a.looking_for = 'student'

以上查询未返回任何数据。它是空的。

让我解释一下表格。

  

job_posting - 包含职位信息   用户 - 包含发布作业的用户信息   job_applied - 包含用户已申请的职位。

所以,我想得到那些没有应用的工作。在Job_paplied表中,我有job_id和uid。

1 个答案:

答案 0 :(得分:2)

而不是inner join尝试LEFT JOIN喜欢:

select b.pic,b.fname,b.lname, a.job_id, a.uid, a.job_title,a.description,a.city, a.position, 
a.salary, a.looking_for,a.website,a.date from job_posting a  
LEFT JOIN users b  on a.uid = b.uid 
LEFT JOIN job_applied c  on b.uid = c.uid
where c.job_id IS NULL  and a.looking_for = 'student'

再试一次。