2014-02-20 334 views
1

我有一个表tblTest其中有一个字段叫e_date,它有一个类型DateTime格式化日期时间字段

我想知道是否有一种方法可以让我在SQL中进行格式化,以便此字段仅在运行存储过程时显示'd mmm yyyy'中的日期。

上的SQL Server 2008 R2

我发现要做到这一点,其显示的日期,我会请一个方法,但是当我尝试和改变格式,以便只显示日期,与相关的数据它不显示。

CONVERT(VARCHAR(9),[Date_ex],6)AS ExamDates,

+2

您使用的是什么RDBMS? – Mureinik

+0

我正在使用的RDBMS是SQL Server 2008 R2 – user3086751

回答

0

查找一个DATE_FORMAT功能。在MySQL中它会是这样的:

//Syntax 
DATE_FORMAT({date},{format}) 

//Example 
DATE_FORMAT("2012-04-27",'%d/%m/%Y') 

更多信息here

0

根据你的历史假设MSSQL;对于SQL Server 2012,只需使用FORMAT()

否则,它有点费劲地丢掉前导零;

select 
    substring(case when day(e_date) < 10 then '' else '?' end + convert(char(11), e_date, 106), 2, 32)