我希望能够做到这样的事情,以便以后与@YearVar一起使用。
SET @YearVar DATETIME = CONVERT(nvarchar, date_hired, 106),
DATEPART(YEAR, date_hired)
然而,我知道如何使用datepart的唯一方法是:
SELECT CONVERT(nvarchar, date_hired, 106) As Hire_Date,
DATEPART(DAY, date_hired) As [Day],
DATEPART(MONTH, date_hired) As [Month],
DATEPART(YEAR, date_hired) AS [Year]
FROM hire
任何帮助都会非常感谢。
安迪
答案 0 :(得分:0)
您可以声明和设置如下所示的变量。
DECLARE @YearVar int = (select DATEPART(YEAR, GETDATE()))
OR
DECLARE @YearVar int
SET @YearVar = (select DATEPART(YEAR, GETDATE()))
select查询应该只返回一个值。
如果您想设置一次值并在查询中使用它,它将始终为您提供相同的值。如果您要查看表中每行的年份,则显示的查询将起作用。或者,您可以将计算列创建为ALTER TABLE hire ADD year as DATEPART(YEAR, date_hired)
,但会对表中的每一行执行DATEPART
。
答案 1 :(得分:0)
从你的问题和评论中,你会找到类似的东西:
DECLARE @YearHired int
SET @Year = (SELECT YEAR(date_hired) FROM hire)