テーブルのデータと構造:
お名前 生年月日 スーソ 1987-02-27 00:00:00.000 スー 1968-02-27 00:00:00.000 ジー 1999-02-27 00:00:00.000
クエリ:
USE [PersonDatabase]
GO
DECLARE @AGE int =1
Select Name, X=CASE
WHEN( ( year(getdate()) - year(DateOfBirth)) >=0 AND (year(getdate()) - year(DateOfBirth)) <=17) THEN 1
WHEN( ( year(getdate()) - year(DateOfBirth)) >= 18 AND (year(getdate()) - year(DateOfBirth)) <=29) THEN 2
WHEN( ( year(getdate()) - year(DateOfBirth)) >= 30 AND (year(getdate()) - year(DateOfBirth)) <=60) THEN 3
END
froM PersonDatabase.mem.Namebirth
WHERE (X=@AGE)
次のように期待していない出力が生成されます。
X
1
2
3
WHERE
私の質問は次のとおりです。次のように出力を生成するために、クエリのCLAUSEでどこが間違っていますか?
X
1