A表:人员表 user_info
user_id
B表 :班次表 duty_info
user_id
duty_date
前天会传到后台几天日期 比如2017-4-8,2017-4-9
我要查询到所有人这几天的班次情况
我尝试下面的sql
SELECT
*
FROM
uers_info U
LEFT JOIN duty_info D ON U . ID = D .user_id
WHERE
(
D .duty_date IN (
'2017-04-03',
'2017-04-04',
'2017-04-05',
'2017-04-06',
'2017-04-07',
'2017-04-08',
'2017-04-09'
)
OR D .duty_date IS NULL
)
如果所有人都没有排班 数据没问题 查询出所有人和全部都是空的排班
但是如果这个人 有排班但是不在我查询的日期内 查询出结果就会过滤掉这个人
有没有大神 帮帮忙