2016-04-29 5 views
0

これは学生テーブルです。私は別のclass.Iに出席することができ、彼/彼女のcourse.Studentの最終marksheetを作ると仮定件名が0でないレコードを検索します。

StudentId ClassId SubjectCode 
101  201  0 
101  201  1 
101  301  1 
101  401  0 

は 学生がそのclass.Likeこの

101  301  1 
ためsubjectcode 0を持っていない行を知りたいです

どうすればいいですか?私はこのレコードを与えるこの

select Studentid,classId,subjectcode from Student 
where operator <> 0 

のように行う場合 も

101 201 1 .I don't want that.because it has 0 for that class 201. 

答えて

2

あなたが使用することができますGROUP BYHAVING

SELECT 
    StudentId, ClassId 
FROM Student 
GROUP BY 
    StudentId, ClassId 
HAVING 
    SUM(CASE WHEN SubjectCode = 0 THEN 1 ELSE 0 END) = 0 

ONLINE DEMO

+0

おかげフェリックスPamittan、用あなたr助け。それは私をたくさん助けました.... –

関連する問題