0 голосов
спросил от в категории database
Попробуйте следующее:
SELECT e.employee_id FROM employee AS e INNER JOIN coaching AS c ON e.employee_id = c.emp_id WHERE e.sup_id = 3 AND c.start_date NOT BETWEEN "2014-12-26" AND "2015-01-30" AND c.end_date NOT BETWEEN "2014-12-26" AND "2015-01-30"


Я бы предложил прочитать это:
SELECT e.employee_id FROM employee AS e INNER JOIN coaching AS c ON e.employee_id = c.emp_id WHERE e.sup_id = 3 AND c.start_date NOT BETWEEN "2014-12-26" AND "2015-01-30" AND c.end_date NOT BETWEEN "2014-12-26" AND "2015-01-30"
# [#^ #]

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.
0 голосов
ответил от
Цитата:
Мне нужен запрос, чтобы узнать сотрудников, которые не зарегистрированы для какой-либо коучинговой программы между указанный диапазон дат, такой как Дата начала «2015-01-22» и Дата окончания «2015-03-12».

, которые включают сотрудников, которые не зарегистрировали какую-либо программу, плюс сотрудники, а не зачисленных между указанным периодом. Вы можете сделать это, используя LEFT Join
SELECT e.employee_id FROM Employee e LEFT JOIN Coaching c ON e.employee_id = c.emp_id WHERE c.emp_id IS NULL or    not (c.start_date  BETWEEN '2014-12-26' AND '2015-01-30'          or c.end_date  BETWEEN '2014-12-26' AND '2015-01-30')


SELECT e.employee_id FROM Employee e LEFT JOIN Coaching c ON e.employee_id = c.emp_id WHERE c.emp_id IS NULL or    not (c.start_date  BETWEEN '2014-12-26' AND '2015-01-30'          or c.end_date  BETWEEN '2014-12-26' AND '2015-01-30')
# [#^ #]

Категории

Добро пожаловать на сайт DraftingCode Q&A (ИТ ответы), где вы можете задавать вопросы и получать ответы от других членов сообщества.

Похожие вопросы

...