Я думаю, что ваша проблема может заключаться в том, что когда записи хранятся в вашей базе данных в переменной DATETIME, они хранятся с частью даты.Когда вы пытаетесь запросить эти записи, вы также ищете значения, которые лежат между 2 значениями даты / времени.
Таким образом, в вашей базе данных время, вероятно, записывается так: «2011-08-24 06:00:00 ', но когда вы выполните запрос, , если вы не укажете дату , тогда значение для части даты будет '01 -01-1900'.Не найдено ни одного совпадения.
Чтобы исключить часть даты, вы можете сделать что-то вроде этого:
select * from Bookings
WHERE
DATEADD(day, -datediff(day, 0, booking_time), booking_time)
Between DATEADD(day, -datediff(day, 0, @booking_time), @booking_time) AND
DATEADD(day, -datediff(day, 0, @booking_tim), @booking_tim)
AND game = " & x
Функция DATEADD удаляет дату и дает только часть времени даты.
Или вы можете изменить процесс, который хранит время бронирования в вашей базе данных, чтобы он всегда сохранял его с постоянной датой, скажем '01 -01-1900 '.