如何找到日历年的雇员人数?

时间:2019-02-18 14:40:21

标签: mysql sql

基本上这个问题是在采访中提出的,我无法回答。

员工表如下:

ghci> quickCheck $ prop_flat flatten' reverseflatten'
+++ OK, passed 100 tests.

现在,我必须找到在2017年工作的所有雇员的ID。

能帮我吗?

3 个答案:

答案 0 :(得分:2)

您可以尝试如下操作:

SELECT id FROM employee
WHERE YEAR(start_date) <= 2017 AND (end_date IS NULL OR YEAR(end_date) >= 2017)

希望此查询不需要解释,因为它很清楚)

答案 1 :(得分:1)

这只是重叠范围问题,可以通过以下查询解决:

SELECT id, name
FROM employees
WHERE
    ('2017-01-01' <= end_date OR end_date IS NULL) AND
    '2017-12-31' >= start_date;

答案 2 :(得分:0)

我认为这会做到的

$a
[1] 1 2

$b
[1] 1 2 3 4 5

$c
[1] 1 2 3