/ / SQL Serverで過去2年間と現在の年のレコードを取得する方法-sql、sql-server、sql-server-2008-r2、msbi

どのようにSQL Serverで最後の2年間と今年のレコードを取得することができます - sql、sql-server、sql-server-2008-r2、msbi

私は私の次の表現を持っています where 句:

DA.Access_Date >= DATEADD(YEAR, -2, GETDATE())

ただし、「2015-02-17」、つまり現在の年から2を引いた値までのデータを返します。

2年間と現在の年のデータが欲しい

例えば2015年1月1日まで。これに関するご意見をお待ちしています。

回答:

回答№1は1

これを試してください:ここで DATEADD(yy, DATEDIFF(yy,0,getdate()) 年の開始月を与える

DA.Access_Date >= DATEADD(YEAR, -2, DATEADD(YY, DATEDIFF(YY,0,GETDATE()), 0))

回答№2の場合は0

助けを借りて スカラー関数

WHERE
YEAR(DA.Access_Date) in (YEAR(GETDATE()),YEAR(GETDATE())-1,YEAR(GETDATE())-2)

回答№3の場合は0

あなたの状態は以下のようになるはずです。 DATEADD(YEAR,DATEDIFF(YEAR, 0, GETDATE())-2,0) これはの最初の日を返します 2015 年。

DA.Access_Date >=  DATEADD(YEAR,DATEDIFF(YEAR, 0, GETDATE())-2,0)

回答№4の場合は0

年を比較してください。

試す

YEAR(DA.Access_Date) >= (YEAR(GETDATE()) - 2)

回答№5の場合は0

where条件でこれを試してください。 年(DA.Access_Date)> =年(getdate())-2