假设有一个包含员工名字和月份的表叫做employee_monthly_info
,可以使用以下SQL查询语句来查找连续1-4月都出现的人员:
SELECT employee_name
FROM employee_monthly_info
WHERE month IN ('January', 'February', 'March', 'April')
GROUP BY employee_name
HAVING COUNT(DISTINCT month) = 4;
该查询将会返回在1-4月都出现过的所有员工的名字。解释一下上述查询语句:
WHERE month IN ('January', 'February', 'March', 'April')
筛选出了1-4月的数据。GROUP BY employee_name
按照员工名字进行分组。HAVING COUNT(DISTINCT month) = 4
筛选出仅出现过1-4月的员工(即4个月的去重数量为4)。