SQL для отображения события на дату начала, дату окончания и любые дни между - PullRequest
0 голосов
/ 03 мая 2010

У меня есть событие в моей базе данных с startDate и endDate .

Мне нужно отображать это событие (на основе текущей даты) каждый день, когда происходит событие.

Таким образом, если событие начинается 3 мая и заканчивается 7 мая, SQL-запрос должен находить его каждый день.

Как мне этого добиться?

SELECT * FROM events WHERE startDate ???

Ответы [ 2 ]

3 голосов
/ 03 мая 2010

Предполагается, что SQL Server:

SELECT * 
FROM events 
WHERE getdate() between startDate and endDate
2 голосов
/ 03 мая 2010

О, попробуйте:

SELECT * FROM событий WHERE GetDate () МЕЖДУ startDate И endDate

По сути, вы говорите базе данных найти текущую дату (с помощью функции GetDate ()) и посмотреть, находится ли она между начальной и конечной датой данных событий!

Просто, чтобы уточнить, одна из вещей, которые я помню в школе, которая мне досталась, это использование функций в запросах. В SQL есть много встроенных функций, таких как GetDate (), которые вы можете использовать практически в любом месте вашего запроса: в предложении WHERE для сравнения со значениями в данном запросе, в предложении SELECT, если вам нужно что-то сделать с данными, которые вы хотите выводить, и т.д ... не бойтесь использовать их! =)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...