使用DatePart
功能从Datetime
类型提取day
和month
,
Select Datepart(Month,DateAdded) AS [Month], -- Month(Dateadded)
Datepart(Day,DateAdded) as [Day], -- Day(Dateadded)
..
From Products
更新:只有使用cast
功能无法取出Month
和Day
。如果你想保持月份和日期在同一列
SELECT CONVERT(VARCHAR(2), Month(DateAdded)) + ':'
+ CONVERT(VARCHAR(2), Day(DateAdded))
.....
要把前导零的使用right
功能,并从DateAdded提取Time
使用Convert
功能与108
值
SELECT right('0'+CONVERT(VARCHAR(2), Month(DateAdded)),2) + ':'
+ right('0'+CONVERT(VARCHAR(2), Day(DateAdded)) ,2) as [Mon:Day],
convert(varchar(10),DateAdded,108) as [Time]
.........
它应该是no通常情况下,你不应该格式化数据以便在数据库中显示。这是一个通常由应用程序处理的任务。这个问题听起来像是基于家庭作业,就业测试或醉酒的胆量。 – HABO 2015-02-08 04:31:25
这看起来像我目前正在研究的作业问题(OregonTech CST324数据库类,从Murach的SQL Server 2012开发者手册开始工作):我写了除第4行外的所有行(甚至是同一列和表名!) ,这就是我所坚持的。我会使用CONVERT,但分配表示使用CAST。 – Azendale 2015-10-15 16:15:39