преобразование даты и времени таким образом требует более одного вызова для преобразования. Лучшее использование для этого в функции, которая возвращает varchar.
select CONVERT(varchar,GETDATE(),112) --YYYYMMDD
select CONVERT(varchar,GETDATE(),108) --HH:MM:SS
Соберите их вместе, как внутри функции
DECLARE @result as varchar(20)
set @result = CONVERT(varchar,GETDATE(),112) + ' ' + CONVERT(varchar,GETDATE(),108)
print @result
20131220 13: 15: 50
Как написал Thinhbk, вы можете использовать select CONVERT(varchar,getdate(),20)
или select CONVERT(varchar,getdate(),120)
, чтобы получить достаточно близко к тому, что вы хотите.