SQL 服务器 -- 年份
SQL SERVER -- YEAR
Select (SELECT YEAR(GETDATE())+(Select('-'))+(SELECT YEAR(GETDATE())+1));
我希望输出为 "2018-2019"
。
有人吗?
SELECT CONCAT(YEAR(GETDATE()), '-', YEAR(GETDATE()) + 1)
CONCAT 负责转换为字符串,因此您不必担心。
编辑:很遗憾,我了解到 CONCAT 仅在 sql 服务器 2012 及更高版本中可用。
您可以使用 + 来附加字符串,因为您正在使用 SQL 2008
,更高版本具有 CONCAT()
功能:
SELECT CAST(YEAR(GETDATE()) AS VARCHAR(4)) + ' - ' + CAST(YEAR(DATEADD(YEAR, 1, GETDATE())) AS VARCHAR(4))
您也可以使用
SELECT CAST(YEAR(GETDATE()) AS VARCHAR(4)) +
'-' +
CAST(YEAR(GETDATE()) + 1 AS VARCHAR(4))
或
SELECT CAST(DATEPART(Year,GETDATE()) AS VARCHAR(4)) +
'-' +
CAST(DATEPART(Year, GETDATE()) + 1 AS VARCHAR(4))
使用datename()
:
select (datename(year, getdate()) + '-' + datename(year, dateadd(year, 1, getdate()))
这样,您就不必处理将整数转换为字符串的问题。
Select (SELECT YEAR(GETDATE())+(Select('-'))+(SELECT YEAR(GETDATE())+1));
我希望输出为 "2018-2019"
。
有人吗?
SELECT CONCAT(YEAR(GETDATE()), '-', YEAR(GETDATE()) + 1)
CONCAT 负责转换为字符串,因此您不必担心。
编辑:很遗憾,我了解到 CONCAT 仅在 sql 服务器 2012 及更高版本中可用。
您可以使用 + 来附加字符串,因为您正在使用 SQL 2008
,更高版本具有 CONCAT()
功能:
SELECT CAST(YEAR(GETDATE()) AS VARCHAR(4)) + ' - ' + CAST(YEAR(DATEADD(YEAR, 1, GETDATE())) AS VARCHAR(4))
您也可以使用
SELECT CAST(YEAR(GETDATE()) AS VARCHAR(4)) +
'-' +
CAST(YEAR(GETDATE()) + 1 AS VARCHAR(4))
或
SELECT CAST(DATEPART(Year,GETDATE()) AS VARCHAR(4)) +
'-' +
CAST(DATEPART(Year, GETDATE()) + 1 AS VARCHAR(4))
使用datename()
:
select (datename(year, getdate()) + '-' + datename(year, dateadd(year, 1, getdate()))
这样,您就不必处理将整数转换为字符串的问题。