1
私は2つのクエリの結果が必要なSQLクエリで作業しています。最初のクエリはこれです:2つのクエリを結合する - Postgresql
これは以下になるselect s.code, count(s.code), s.name from course_staff c join courses e on
c.course = e.id
join subjects s on e.subject = s.id
join semesters x on e.semester = x.id
where c.staff = 5033690
group by s.code, s.name
having count(s.code) > 8;
:
code | count | name
----------+-------+--------------------------------
MATS1464 | 10 | Professional Comm&Presentation
MATS6605 | 9 | Prof Comm & Presentation
2のクエリ:
count
-------
30
:これは以下になる
select count(distinct s.code) from course_staff c join courses e
on c.course = e.id
join subjects s on e.subject = s.id
join semesters x on e.semester = x.id
where c.staff = 5033690
having count(s.code)>20;
私は両方のカウントを組み合わせる必要があります上記2つのクエリの条件を1つのクエリにまとめて、関数またはビューで使用できるようにします。両方の条件が満たされるようにこれらの2つのクエリをどのように結合することができるかについてアドバイスしてください。ヘルプは非常に感謝しています。おかげ
hh?サンプルデータと希望の結果を表示してください。 –
あなたがここで求めていることはあまり明確ではありません。 1つのクエリにはcount(s.code)> 20のhas節があり、もう1つはcount(s.code)> 8です...これらは同じフィールドなので、どのようにクエリを組み合わせることができるか分かりません。 2番目のクエリに表示する最初のクエリの列が必要ですか?または、他の何か? –
最初のクエリは基本的に、特定のサブジェクトが何年にもわたって教えられた回数であり、2番目のクエリは、何年にもわたって教わった別個のサブジェクトの総数です。 – user