2012-09-21 38 views
-1

我有兩張表,Student_Record的表A和Student_ID的表B,由Student_ID字段鏈接。

如何選擇查詢使用兩個表的條​​件

Table A (Student_Record) 
Student_ID | Name | School_Year 
1   | Jane | 2010-2011 
2   | Amy | 2010-2011 
3   | Dave | 2011-2012 
4   | Roger | 2010-2011 


Table B (Student_Subject) 
Student_ID | Subject | Grade 
1   | Math | Passed 
1   | Physics | Passed 
1   | History | Passed 
2   | Math | Failed 
2   | Physics | Passed 
2   | History | Passed 
3   | Math | Passed 
3   | Physics | Passed 
3   | History | Passed 
4   | Math | Passed 
4   | Physics | Passed 
4   | History | Passed 


基於樣品臺以上,我想選擇報名參加2010 - 2011年的學生和誰通過所有科目。

結果應該返回羅傑,因爲他們通過所有的三個科,並參加了2010 - 2011年相比,艾米它未能對數學和戴夫其school_year是2011-2012。

+0

行,所以你覺得我們能做些什麼?你看過加入嗎? – Coffee

+0

Google'SQL Join' –

+0

是的,我查詢過SQL連接,INNER JOIN是特定的,但它沒有給出我想要的結果,或者只是我在查詢中丟失了某些東西。 –

回答

1
select sr.Student_ID, sr.Name 
from Student_Record sr 
left outer join Student_Subject ss on sr.Student_ID = ss.Student_ID 
    and ss.Grade = 'Failed' 
where ss.Student_ID is null 
    and sr.School_Year = '2010-2011' 

SQL Fiddle Example

+1

歡迎來到堆棧溢出,我們將爲你做你的功課。 –

+0

@JSKNS它是慈善機構:) –

+0

@RedFilter,謝謝你的回答,但這不會返回任何東西? –