我如何将格式日期转换为d / M / yyyy并将格式时间转换为h:mm:ss AM in SQL

时间:2014-09-27 01:03:11

标签: sql sql-server-2008 converter sqltransaction

我创建了一个datetime类型的字段。我希望以YYYY / M / D格式显示它

例如

日期09/09/2014显示为2014/9/9

此外,我需要以2:43:14 PM的格式显示时间字段[Time_Orde]

我使用的是SQL Server 2008

我试过了这个功能

CONVERT ( data_type [ ( length ) ] , expression [ , style ] )

我的代码:

SELECT CONVERT(date,Order_Date) from Orders_Teakeaway

但我无法获得这种格式2014/9/9

1 个答案:

答案 0 :(得分:1)

没有单一的样式编号可以给你YYYY / M / D 2014/9/9

试试这个:

convert(varchar(5),Order_Date,111) + replace(convert(varchar(5),Order_Date,1),'0','')

样式111是YYYY / MM / DD,但我们只取前5个字符(YYYY /) 样式1是MM / DD / YY,但我们只取前5个字符(MM / DD) 然后替换MM / DD部分中的任何零并连接

当时,试试这个

  left(right(CONVERT(VARCHAR(20), Time_Orde, 100),7),5)
+ left(right(CONVERT(VARCHAR(27), Time_Orde, 9),9),3)
+ right(CONVERT(VARCHAR(20), Time_Orde, 100),2)