SQL 多个活动作业查询

SQL multiple active jobs query

这是我正在使用的数据库的一部分。

因此,我正在尝试整理一个查询,以显示从事过多个活跃工作的员工。到目前为止,我已经设法编写了一个查询,该查询将为我提供一份从事一项或多项活跃工作的人员列表。

SELECT 
   cont_employee.*,contract.*
FROM 
   cont_employee
JOIN 
   contract ON contract.emp_no = cont_employee.emp_no
WHERE 
   is_active = 1

我不太确定从这一点开始应该如何进行。

您需要某种聚合。这是我的建议,假设 is_activecontractor table 中,这就是您在查询中的真正意思:

SELECT ce.emp_no
FROM cont_employee ce JOIN
     contractor c
     ON c.emp_no = ce.emp_no
WHERE c.is_active = 1
GROUP BY ce.emp_no
HAVING COUNT(*) > 1;