如何以yyyy / M格式选择getdate()

时间:2016-01-14 00:26:31

标签: sql sql-server sql-server-2008 sql-server-2005

我想以getdate()格式选择yyyy/M。我试着写一个查询

SELECT FORMAT(GETDATE(), 'yyyy/M')

但它正在抛出错误。

我是SQL的初学者。如果只有一个月的月份,我如何获得yyyy/m格式?例如。如果只有一个月的数字(不应该返回2016/1),则查询应返回2016/01,当月份有两位数时,应返回2016/10

3 个答案:

答案 0 :(得分:4)

如何获取日期的YEARMONTH部分并将它们连接起来:

SELECT
    CAST(DATEPART(YEAR, GETDATE()) AS VARCHAR(4)) + '/' +
    CAST(DATEPART(MONTH, GETDATE()) AS VARCHAR(2))

答案 1 :(得分:0)

试试这个:

SELECT FORMAT(GETDATE(),' yyyy / MM')

SELECT FORMAT(CAST('2015-11-15' AS smalldatetime),'yyyy/M'), 
      FORMAT(CAST('2015-01-15' AS smalldatetime),'yyyy/M')

给出:

2015/11 | 2015/1

答案 2 :(得分:0)

SELECT CONVERT(VARCHAR(7), GETDATE(), 111) AS [YYYY/MM]

OR

SELECT CONVERT(VARCHAR(7), GETDATE(), 111)