SQL子查询或JOIN

时间:2014-10-21 20:57:19

标签: php mysql sql

我有2个表,我正在使用mysql和php,结构看起来像这样

Table A(Job ads)
id_job
title_job
description_job

Table B(Applicants)
id_applicant
id_job
ID
date_application

所以例如我需要显示每个招聘广告及其申请人可以是0或更多。

所以我想显示一个名为“显示申请人”的链接(以及此处的申请人数作为预览)。

我尝试了JOIN,但是为每个申请人从同一份工作中获得了记录。如果我有2个申请人,那么我的工作记录会被列出两次。  在主查询中是否需要子查询以获取指定作业广告的申请人数?

谢谢

1 个答案:

答案 0 :(得分:5)

您不需要子查询,您需要根据工作计算申请人和分组的数量:

SELECT id_job,
       title_job, 
       description_job, 
       count(id_applicant) 
FROM `Table A` 
INNER JOIN `Table B` 
ON `Table A`.id_job = `Table B`.id_job 
GROUP BY id_job, title_job, description_job