2014-11-18 4 views
0

Я хочу конвертировать из CRSE_EDTE (string) в datetime. Текущий CRSE_EDTE формат даты - YYYYMM, поэтому я решил положить 28 дней на каждую дату (DD).Ошибка преобразования varchar в datetime в SQL

select 
    try_convert(datetime, [CRSE_EDTE], 112) + CRSE_EDTE + '28' as new_CRSE_EDTE 
FROM 
    [SMBM_DBPELJ].[DBPELJ].[MSTUMASTER] 

Я получаю сообщение об ошибке:

Msg 241, Level 16, State 1, Line 1
Conversion failed when converting date and/or time from character string.

ответ

0

у меня нет базы данных, чтобы играть, но будет что-то вроде этой работы?

select try_convert(datetime,LEFT([CRSE_EDTE], 4)+'-'+RIGHT([CRSE_EDTE],2)+'-28',111) as new_CRSE_EDTE 
FROM [SMBM_DBPELJ].[DBPELJ].[MSTUMASTER] 
+0

Благодарим за отзыв. Я попробовал свой код, ошибка здесь Msg 245, Level 16, State 1, Line 2 Ошибка конверсии при преобразовании значения varchar '1991-1 -' в тип данных int. –

+0

Спасибо, что он работает .. Спасибо снова .. –

+0

Нет проблем! Я рад, что это помогло. – Jonathan

Смежные вопросы