SQL конвертирует строку в формат даты 112

У меня есть дата ввода, и мне нужно преобразовать ее в формат 112 (ггггммдд) для последующего использования в моем операторе SQL.

declare @day varchar(10)

set @day = '6/21/2013'

select @day

Я делал это раньше ... IDK, если это потому, что я использую SQL 2000 для этого проекта, и сейчас он не работает.


person McG369    schedule 25.06.2013    source источник


Ответы (2)


Я бы сначала преобразовал его в datetime, а затем в нужный формат:

declare @day varchar(10)

set @day = '6/21/2013'

select convert(varchar(10), cast(@day as datetime), 112);

См. SQL Fiddle с демонстрацией.

person Taryn    schedule 25.06.2013
comment
Я использовал параметр запроса (не заданный вручную, как в примере), и у него были проблемы с кавычками. Спасибо, это способ сделать это. - person McG369; 25.06.2013

Вы можете попробовать этот код от этого начинающего пользователя этого сайта.

declare @day varchar(10);

set @day = '6/21/2013';
select convert(date,@day,112);
person Asif Mahamud    schedule 25.06.2013
comment
Это дает мне код ошибки: Строка вводимых символов не соответствует стилю 112, либо измените строку вводимых символов, либо используйте другой стиль. - person Tamas Rev; 12.12.2019