从sql中的字段中提取月和日

时间:2014-12-10 22:39:09

标签: sql sql-server

如何从列中选择“MMDD”格式的月份和日期,其中日期为“2014-01-12”(日期时间)格式?

1 个答案:

答案 0 :(得分:0)

如果您提交的是日期或日期时间,我会使用函数DATEPART

例如,这将获得当前年份:

DATEPART(year, GETDATE())

查看完整文档的msdn页面。

如果您的字段是文字,请使用CONVERT将字段转换为DATE,然后使用第一种方法并将转换后的日期作为您的值。

例如:

DATEPART(year, CONVERT(DATE, '11/1/2014'))

完整复制/粘贴示例

DECLARE @DateVal VARCHAR(10) = '11/01/2014'
DECLARE @Month VARCHAR(2) = CAST(DATEPART(MONTH, CONVERT(DATE, @DateVal)) AS VARCHAR),
        @Day VARCHAR(2) = CAST(DATEPART(DAY, CONVERT(DATE, @DateVal)) AS VARCHAR)
PRINT REPLICATE('0', 2 - LEN(@Month)) + @Month + REPLICATE('0', 2 - LEN(@Day)) + @Day