Mysql从两个不同的表中选择记录的方法如下

s3fp2yjn  于 2023-01-20  发布在  Mysql
关注(0)|答案(1)|浏览(110)

我想在两个表(jobs和jobs_applications)上运行查询,并获取与每个作业关联的应用程序总数。
表格结构为:
作业表
| 作业标识|职务|
| - ------|- ------|
| 1个|系统分析员|
| 第二章|Web开发人员|
| 三个|软件开发人员|
应用程序表
| 应用程序标识|作业标识|申请日期|
| - ------|- ------|- ------|
| 1个|1个|二○二三年一月十二日|
| 第二章|1个|二○二三年一月十二日|
| 三个|1个|二○二三年一月十四日|
| 四个|第二章|二○二三年一月十四日|
| 五个|三个|二○二三年一月十四日|
| 六个|三个|二○二三年一月十五日|
| 七|三个|二○二三年一月十五日|
| 八个|三个|二○二三年一月十五日|
预期结果为:
| 作业标识|职务|申请总数|
| - ------|- ------|- ------|
| 1个|系统分析员|三个|
| 第二章|Web开发人员|1个|
| 三个|软件开发人员|四个|
查询我尝试与一些组合计数区分,但我无法弄清楚,并在这个平台上搜索没有给我带来预期的结果。

5fjcxozz

5fjcxozz1#

使用连接聚合方法,我们可以尝试:

SELECT j.job_id, j.job_title, COUNT(a.job_id) AS total_no_applications
FROM jobs j
LEFT JOIN applications a
    ON a.job_id = j.job_id
GROUP BY 1, 2
ORDER BY 1;

相关问题