SQL Server に次のテーブルがあります。
-----------------------------
ID Age Gender
1 30 F
2 35 M
3 32 M
4 18 F
5 21 F
私がする必要があるのは、指定された範囲内のレコードをグループ化し、出現回数をカウントするクエリを実行することです。結果は、後でヒストグラム チャート (棒グラフ) に表示する必要があります。次のようなクエリを試しました。
SELECT
count(CASE WHEN Age>= 10 AND Age < 20 THEN 1 END) AS '10 - 20',
count(CASE WHEN Age>= 21 AND Age < 30 THEN 1 END) AS '21 - 30',
count(CASE WHEN Age>= 31 AND Age < 35 THEN 1 END) AS '31 - 35',
count(CASE WHEN Age>= 36 AND Age < 40 THEN 1 END) AS '36 - 40',
FROM (SELECT Age FROM Attendees) AS AgeGroups
今のところ、これで問題はありませんが、性別の列は考慮されていません。すべての年齢層の頻度をカウントする単一の行が生成されます。
10-20 21-30 31-35 36-40
0 22 21 13
性別が考慮される場合、性別ごとに 2 つのレコードが表示されます。私は次のようなものを見る必要があります:
Gender 10-20 21-30 31-35 36-40
M 0 12 9 6
F 0 10 12 7
この問題にどのようにアプローチすればよいですか?