2016-10-13 178 views
0

是對不對?我覺得我的邏輯不在這裏,但我需要列出晚於至少一名入學「IT」部門的學生入學的學生。比較日期的嵌套子查詢

SELECT studentid, year 
FROM enrolled, course 
WHERE program = 'IT' and year >= ALL (
     SELECT year FROM enrolled); 


enrolled(studentid, courseID, year) 
course(courseid, department) 

我相信一切是正確的,除了其中一部分


對不起,我給出了錯誤的模式,它是假設從

學生(SID,啓動程序)

但我相信現在可以使用這個了,謝謝

SELECT sid, started 
FROM student 
WHERE started > (
    SELECT MIN(started) 
    FROM student 
    WHERE program = 'IT'); 
+0

比至少「一」學生晚? – Hogan

+0

哦,是的,謝謝你 – yeny314

回答

0

把它逐步

的第一個學生是在「IT」(猜測有一列名爲程序)誰起步晚於至少一個學生「入學

SELECT MIN(year) 
FROM enrolled 
WHERE program = 'IT' 

名單的學生IT ' 部。

SELECT studentid, year 
FROM enrolled 
WHERE year > (
    SELECT MIN(year) 
    FROM enrolled 
    WHERE program = 'IT' 
) 
+0

對不起,我給了你錯誤的模式,但我現在修好了。我瞭解WHERE內部的嵌套查詢,但是由於使用了面向對象的思維方式,所以我很難包裝它。謝謝! – yeny314

+0

@ yeny314 - 很高興我能幫上忙,祝你好運。 – Hogan