@ net Как я уже упоминал в моем предыдущем комментарии, кажется, что вы хотите провести различие в датах.Если это так, то вы могли бы сделать
WHERE DATEDIFF(DD, date_entry, date_access_created) >= 2
Это будет означать, что в этой строке разница между двумя указанными датами больше двух дней.
То, как это работает, говорит, сколько днейесть ли между теми датами, которые в вашем примере для первой строки это будут 5
разница дней.
Полный запрос будет:
select employee_name, emp_no, date_entry, date_access_created
from tbl_employee
WHERE DATEDIFF(DD, date_entry, date_access_created) >= 2
Редактировать из вопроса в комментариях:
Да, вы можете исключить выходные, на самом деле я сделал это не так давно и использовал самый простой, который я нашел, который работал.
(DATEDIFF(dd, date_entry, date_access_created) + 1)
-(DATEDIFF(wk, date_entry, date_access_created) * 2)
-(CASE WHEN DATENAME(dw, date_entry) = 'Sunday' THEN 1 ELSE 0 END)
-(CASE WHEN DATENAME(dw, date_access_created) = 'Saturday' THEN 1 ELSE 0 END)
Я знаю, что это выглядит совсем по-другому, но, кстати,это работает так же, как первый, который я упомянул.Он использует те же параметры датированных значений, которые являются вашими датами начала и окончания, но единственное, что он делает, это проверяет те дни, которые являются воскресеньями, а какие субботами, и, если эти дни появляются, мы обычно минус те из общего числа дней.между двумя датами.
Итак, если между этими двумя полями дат было 7 дней, скажите, что они проходили с понедельника по воскресенье.Было бы хорошо сказать, что у нас есть одна суббота и одно воскресенье, поэтому мы не хотим, чтобы в общем количестве было 2 дня, поэтому разница составила бы 7 - 2 = 5 дней.
Надеюсь, это имеет смысл.