2017-08-11 14 views
1

これは私のMySQLのテーブルがどのように見えるかです:ここでは SQL Table複合主キー、1と同じ値を持つ表示項目と一つの異なる

、faculty_idとresearch_areaは主キーです。私は "AI"と "ビッグデータ"の両方で働く学部を求めています。だからラヴィ(F1)とダム(F3)が印刷されるべきです。

私はselect * from faculty_details where research_area='AI' AND research_area='Big Data';select * from faculty_details where research_area='AI' or research_area='Big Data';を試しましたが、動作しませんでした。あなたは重複を持つことができる場合は

select fd.faculty_id 
from faculty_details fd 
where fd.research_area in ('AI', 'Big Data') 
group by fd.faculty_id 
having count(*) = 2; 

、その後、使用します:

答えて

1

一つの方法は、group byhavingが使用する

having count(distinct research_area) = 2 
+0

これは正しいですが、良い方法がなければならないので、私は1つの以上の対象を追加した場合研究分野では、学部ごとに数が異なります。 –

関連する問題