Vivek.anand34 Ответов: 2

Как решить ошибку преобразования datetime в SQL


уважаемый друг,

Я хочу взять отчет между датой начала и датой окончания. Я получил ошибку в sql server..

Я перепробовал все dateformats, но нет смысла повторять одни и те же ошибки....
Ошибка:

Преобразование не удалось при преобразовании даты и/или времени из символьной строки.

Что я уже пробовал:

выберите RetDate, ItemName, cast(MatQty as numeric(10, 2)) totalcount
из Vw_WorkSheetQty, где RetDate между '01/02/2016' и '26/02/2016'


тип данных-datetime

2 Ответов

Рейтинг:
17

F-ES Sitecore

Что такое 26/2/2016? 26-го числа второго месяца? 2 - го числа 26-го месяца? 2016-й день второго месяца 26-го года? Это может показаться вам очевидным, но помните, что компьютер знает только то, что ему говорят. Если вы действительно должны использовать строки в качестве дат, то используйте однозначные форматы.

between '1 feb 2016' and '26 feb 2016'


Richard Deeming

Единственным по-настоящему однозначным форматом, по крайней мере в MS SQL, является yyyyMMdd, без разделителей.

Between '20160201' And '20160226'

Рейтинг:
1

Member 14953354

Выберите CAST(GETDATE() как smalldatetime)


Richard Deeming

Неформатированный, необъяснимый и лишь смутно связанный код, обрезанный, не является "решением" этого уже решенного вопроса.