Как преобразовать строку “dd/mm/yyyy” в дату и время в SQL Server?

Я попробовал это

SELECT convert(datetime, '23/07/2009', 111)

но получил эту ошибку

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

Однако

SELECT convert(datetime, '07/23/2009', 111)

в порядке хотя

Как зафиксировать 1-й?

45
задан John Saunders 26 May 2010 в 19:38
поделиться

2 ответа

Последний аргумент CONVERT, похоже, определяет формат, используемый для разбора. Обратитесь к документации MSDN по CONVERT.

111 - тот, который вы используете, это японский yy/mm/dd.

Полагаю, вы ищете 103, то есть dd/mm/yyyy.

Поэтому вы должны попробовать:

 SELECT convert(datetime, '23/07/2009', 103)
89
ответ дан 26 November 2019 в 21:07
поделиться

Попробуйте:

SELECT convert(datetime, '23/07/2009', 103)

это британский/французский стандарт.

10
ответ дан 26 November 2019 в 21:07
поделиться
Другие вопросы по тегам:

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