从SQL Query中仅提取一个月

时间:2015-05-04 10:42:19

标签: sql-server

我有一个SQl查询。我使用下拉列表来显示日期。我想以MMMM格式显示月份。

SELECT DISTINCT[drdates] (CONVERT(CHAR(4), [drdates], 100) + CONVERT(CHAR(4), [drdates], 120)) FROM [DRReceive_20141229]

2 个答案:

答案 0 :(得分:2)

SELECT DISTINCT UPPER(LEFT(DATENAME(MONTH,MONTH([drdates])),4)) 
               + CONVERT(CHAR(4), [drdates], 120)
FROM [DRReceive_20141229]

在旁注中我从未见过将日期值格式化为MMMMyyyy,这是一种显示日期值的奇怪格式。

但是如果您想要一些相当简单或通常的格式,如MMMyyyy,如果您使用的是sql server 2012或更高版本,则可以执行以下操作...

SELECT DISTINCT UPPER(FORMAT ( [drdates], 'MMMyyyy' ))
FROM [DRReceive_20141229] 

答案 1 :(得分:0)

这将帮助您检索前几个月的四个字符:

  select CONVERT(CHAR(4),DATENAME(MONTH, [drdates])) + CONVERT(CHAR(4),[drdates], 120)) [DRReceive_20141229];