Преобразование в формат mm / dd / yyyy

У меня есть таблица под названием SF_Data, и есть столбец с именем IN_Date, ID, который выглядит так:

ID IN_Date 1 9/8/2010 2 26/04/2011 3 20/09/2010 

Тип данных IN_Date – varchar (50).

Я пытаюсь преобразовать IN_Date в формат mm / dd / yyyy. Я попытался сделать это:

 Select convert(varchar,IN_Date,103) From dbo.SF_Data 

Но формат не меняется. Может ли кто-нибудь сказать мне, где я ошибаюсь

Вам нужно преобразовать, чтобы исправить данные (до нужного типа данных) перед форматированием …

 Select convert(varchar, convert(date, IN_Date, 103), 101) from dbo.SF_Data 

Третий параметр для convert не имеет смысла при преобразовании из varchar в varchar . Поэтому в комментарии @marc_s вам придется преобразовать varchar в datetime с использованием формата 103, а затем из datetime в varchar определяя формат 101:

 Select convert(varchar(12),convert(datetime,IN_Date,103),101) From dbo.SF_Data 

Например:

 select convert(varchar(12),convert(datetime,'31/12/2001',103),101) 

печатает 12/31/2001 .

См. MSDN.