#sql #datetime #datediff
#sql #datetime #датированный diff #datediff
Вопрос:
У меня есть имя таблицы PrayerTimes
. Я хочу получить следующее время молитвы. В каждой молитве есть перерыв. Например, 30 минут или 35 минут. Как я могу проверить, что это время перерыва в молитве.
Поскольку я прикрепил изображения, которые показывают это до 5: 01 утра. Он показывает мне время следующей молитвы, чтобы я также мог получить перерыв. Но в 5: 02 он показывает время следующей молитвы.
Вот пример
id Time Break_Time
1 2016-10-20 05:03:00.000 2016-10-20 05:33:00.000
2 2016-10-20 12:06:00.000 2016-10-20 12:36:00.000
3 2016-10-20 15:25:00.000 2016-10-20 15:31:00.000
4 2016-10-20 17:53:00.000 2016-10-20 18:23:00.000
5 2016-10-20 19:23:00.000 2016-10-20 19:53:00.000
6 2016-10-21 05:03:00.000 2016-10-21 05:33:00.000
7 2016-10-21 12:06:00.000 2016-10-21 12:36:00.000
8 2016-10-21 15:24:00.000 2016-10-21 15:54:00.000
9 2016-10-21 17:52:00.000 2016-10-21 18:22:00.000
10 2016-10-21 19:22:00.000 2016-10-21 19:52:00.000
Я хочу вернуть, True
если время находится между Time и Break_Time
Комментарии:
1. Можете ли вы опубликовать некоторые образцы входных данных и желаемый результат, а не изображения…. Используйте Ctrl K, чтобы упорядочить ввод и вывод…
2. @Teja, пожалуйста, проверьте отредактированный пост сейчас
3. Можете ли вы также опубликовать желаемый результат…. Если входные и выходные данные понятны, то легко решить любую проблему..
4. @Teja, я хочу проверить эту таблицу, и если дата находится между Time и Break_Time, она должна возвращать True
Ответ №1:
select top 1 [Time] from prayertimes where SYSDATETIME() < DateAdd(minute, 30, [time]) order by [time]