в sql между @startdate и @enddate не сравнивает временную часть? Как сравнить временные части даты - PullRequest
0 голосов
/ 10 февраля 2010

У меня есть такой запрос

SELECT AVAILABILITY_DATE_TIME FROM APPT_PROVIDER_AVAILABILITY
            WHERE AVAILABILITY_DATE_TIME between @START_DATE  AND @END_DATE 

предположим, что у меня есть, если @startdate = '2/11/2010 11: 31 : 00 AM' и @enddate = '2 /11/2010 11: 56 : 00 AM '

, тогда разница равна нулю, его доля времени игнорирования.

Если вы можете предоставить запрос, пожалуйста, используйте

имя таблицы: APPT_PROVIDER_AVAILABILITY, имя столбца: AVAILABILITY_DATE_TIME

и @start_date и @enddate в качестве параметров

Спасибо ваванс

1 Ответ

2 голосов
/ 10 февраля 2010

Он не игнорирует часть времени.

  • Проверьте ваши данные - у вас действительно есть запись в этом диапазоне
  • Проверьте настройки вашей культуры - чтобы при преобразовании в дату / время строка «2/11/2010» не считалась «11/2/2010»
  • Измените свое назначение параметров. Даже если ваша культура правильна, вы все равно должны использовать однозначное значение для задания. Нечто подобное: 2010-02-11 11:31:00 AM
  • Проверьте определения параметров, что вы не используете более новый тип даты.
  • Если ничего не помогло, запишите его длинной рукой: WHERE ([column] >= @startdate AND [column] <= @enddate)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...