0

我希望以后能够做这样的事情以供@YearVar 使用。

SET @YearVar DATETIME = CONVERT(nvarchar, date_hired, 106),
DATEPART(YEAR, date_hired)

然而,我知道如何约会的唯一方法是这样的:

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

任何帮助都会非常感谢。

安迪

4

2 回答 2

0

您可以声明和设置变量,如下所示。

DECLARE @YearVar int = (select DATEPART(YEAR, GETDATE()))    

或者

DECLARE  @YearVar int    
SET @YearVar =  (select DATEPART(YEAR, GETDATE()))    

选择查询应该只返回一个值。

如果您想设置一次值并在查询中使用它,如您所示,它将始终为您提供相同的值。如果您要计算表中每一行的年份,那么您显示的查询将起作用。或者,您可以创建一个计算列,ALTER TABLE hire ADD year as DATEPART(YEAR, date_hired)但它将DATEPART为表中的每一行执行。

于 2013-09-08T22:54:43.470 回答
0

从您的问题和评论中,您会寻找以下内容:

DECLARE @YearHired int
SET @Year = (SELECT YEAR(date_hired) FROM hire)
于 2013-09-08T22:57:27.757 回答