SQLでユニークIDをCOUNT(DISTINCT())で集計する時に
特定の条件が一致するものの数を数える事は出来ますか?
例えば
・生徒数
・生徒の内女性(female)の数
・生徒の内3年生(grade_3)の数
を一つのクエリ出すときはどうすればいいのでしょうか?
▼今のSQLクエリ
MYSQL
1SELECT COUNT(DISTINCT(ID))as id, ??? as 女性, ??? as 3年生 2FROM students
WHERE文で絞る事も考えたのですが、そうするとIDの数まで少なくなります。
SELECTの中で項目ごとにWHEREのようなものを使って絞り込めれば嬉しいのですが、ぐぐっても出てきませんでした。
MySQL
1SELECT COUNT(DISTINCT(ID)) as id, COUNT(DISTINCT(ID)) WHERE 性別=female as 女性, COUNT(DISTINCT(ID)) WHERE 学年=grade_3 as 3年生 2FROM students
のような形でクエリが書けると一番うれしいのですがやり方が見つかりません。
よろしくお願いいたします。