2009-11-12 2 views
0

Есть ли способ форматирования даты SQL, как это:MDYY SQL Format

3/11/2009 (в отличие to03/11/2009)

20/7/2008 (в отличие от 20/07/2008)

Спасибо!

+0

где вы смотрите на результаты? (отчет, приложение, редактор t-sql?) –

ответ

0

В самом T-SQL вы можете найти в онлайн-книгах о ключевом слове CONVERT. Он показывает список кодов, которые предоставляют разные форматы дат.

0

Попробуйте UDF ..

create function dbo.mdyDate(@theDate DATETIME,@fmt INT) 
returns VARCHAR(10) 
as 
BEGIN 
    declare @ans VARCHAR(10) 
    set @ans = replace(convert(varchar(10),@theDate,@OptFmt),'/0','/') 
    if left(@ans,1)='0' set @ans=substring(@ans,2,9) 
    return @ans 
END 

Примеры

select dbo.mdyDate(dateadd(d,-10,getDate()),103)  -- Nov 4, 2009 
select dbo.mdyDate(dateadd(m,-5,getDate()),103)  -- June 14, 2009 
select dbo.mdyDate(dateadd(d,-10,getDate()),101)  -- Nov 4, 2009 
select dbo.mdyDate(dateadd(m,-5,getDate()),101)  -- June 14, 2009