Как я могу использовать функцию SQL DATEADD (), чтобы найти запись за этот рабочий день? Например:
SELECT * FROM records r
WHERE r.creationTime <= GETDATE()
AND r.creationTime >= DATEADD(dd, -1 * hoursFromStartOfThisDay, GETDATE())
Где 'hoursFromStartOfThisDay' - именно то, что написано.
Примечание: я говорю о рабочих днях, поэтому с 9:00 до 17:00, с понедельника по пятницу, если это вообще имеет значение.
Спасибо, ребята!
Редактировать: я также ищу применение решения для начала недели / месяца и, возможно, часа.
Редактировать: поэтому, если запись была создана 18/07/2011 08:55:00, а другая - 18/07/2011 09:05:00, я хочу, чтобы вторая запись была выбрана запросом и не первый. Однако, если текущая функция GETDATE () - 18/07/2011 09:15:00, она становится хитрой.
как насчет добавления AND r.creationTime >= '9am'
?