: 99年高考
: 已知有一學校的資料庫綱目(database schema)如下:
: Student(SID, SName, SAge, Address) //學生(學號、姓名、年齡、地址)
: Teacher(TID, TName, TAge, Office#) //老師(老師編號、姓名、年齡、辦公室)
: Course(CID, CTitle, Credit) //課程(課程編號、課名、學分數)
: Take(CID, TID, SID, Score) //修課(課程編號、老師編號、學生編號、分數)
: 請找出有那些學生,他們修了TName = “Harrison Ford”
: 這位老師所開設的所有課程,請列出這些學生的SName。(10分)
這題這樣改可不可以?
SELECT Sname
FROM Student, Take, Teacher (這裡一定要 join 嗎? 直接cartisian product?)
WHERE TName='Harrison Ford'
GROUP BY Sname
HAVING Count (SName) = Count (*)(
SELECT CID,TName
FROM course, Teacher
WHERE TName='Harrison Ford')
※ 編輯: sanhsia 來自: 124.8.230.138 (09/18 21:10)