COUNT(*)
とGROUP BY
を使用して作成された列を、カウントされた元の選択に追加しようとしています。しかし、選択は非常に複雑です(私の例ではWHERE ...
行以上でした)ので、コードは重複しません。結合内のエイリアスの繰り返し使用
SQL Serverは、左側のjoinステートメント内に別名t1
を使用することを承認しません。助言がありますか?それが2005年以降になら
select t1.school, t1.grade,t1.individual,t2.cnt as 'class size' from (
select * from students
where (students.age < 16 and students.ACT_score is not null)
) as t1
left join (
select distinct school, grade, count(*) as 'cnt' from t1
group by school, grade
) as t2
on t1.school = t2.school and t1.grade = t2.grade
SQLサーバーのバージョンは? – JNK
2005年、私は –
の列 'subjects.ACT_score'を参照しますが、テーブル' subjects'は参照していません... – RedFilter