des1roer
@des1roer
ученье - свет, а неученье - приятный полумрак

MS SQL выборка по datetime?

не могу понять логики. ковыряю чужой код. там скл запрос вида
select * from
db
where DATE_IZMER>='01.11.2015'
 and DATE_IZMER<='30.11.2015'

пытаюсь выполнить в менеджере получаю

The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value.


привожу к виду DATE_IZMER>=cast('2015-11-01' as datetime) нет данных вообще

getdate отдает 03.12.2015 15:04:59
  • Вопрос задан
  • 1658 просмотров
Пригласить эксперта
Ответы на вопрос 5
mahoho
@mahoho
Full stack certified PHP developer.
Пишите в формате Ymd: 20151112, это независимый от локали формат, работать будет всегда.
Ответ написан
Комментировать
@dmitryKovalskiy
программист средней руки
Если вам надо просто результат запроса посмотреть - попробуйте даты писать в формате 'yyyy-MM-dd'
Ответ написан
@Fr0stDev1
Это должно сработать
SET DATEFORMAT dmy

Писать в менеджере в начале сессии, не знаю почему, у меня это сбрасывается после перезапуска.
Ответ написан
Комментировать
MaxDukov
@MaxDukov
впишусь в проект как SRE/DevOps.
попробуйте DATE_IZMER>='01.11.2015 00:00:00.000'
Ответ написан
Комментировать
@artemt
Full-stack developer
Если запрос пишется, чтобы быстро глянуть, нагляднее использовать формат '12 december 2015', '1 november 2015' и т.п.. Для приведения к дате лучше вместо CAST написать CONVERT с явным указанием стиля даты.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы