誰かがcaseステートメントを手伝ってくれませんか。私が必要としているのは次のクエリです。これを簡単に行う方法があることは知っていますが、CaseStatementのヘルプが必要です。
-現在の月が「DOB月より少ない」場合は、合計年数の「1」を取得して41を取得します。--現在の月が「DOB月より大きい」場合、年齢は正しいです。-ただし、現在の月がDOB月と「等しい」場合は、正しい年齢を取得するために日レベルに移動する必要があります。
Set @DOB = '01 November 1971'
Set @Today = GETDATE()
SELECT Datediff(Year,@DOB,@Today) AS Years,
Datepart(Month,@DOB) As DOB_Month,
Datepart(Day, @DOB) as DOB_Day,
DatePart(Month, @Today) As Current_Month,
Datepart(Day,@Today) AS Current_Day