0
我有點難倒如何構建此查詢。我有兩張桌子,一張是畢業要求(GradReq),另一張是獲得學生學分(StoredGrades)。 GradReq列出每個「信用卡」以及可以填寫的相關課程編號。 StoredGrades列出課程編號以及學生是否通過課程。理論實例如下。Oracle SQL - 用學分填補學生畢業要求。 (循環或創意加入?)
GradReq:
CreditBucket CourseNumber
Algebra I 100000
Algebra I 100001
Algebra II 100001
Algebra II 100002
StoredGrades:
CourseNumber Passed StudentID
100001 1 30003
我遇到的問題是,與標準(左)參加兩個代數I和代數II信貸桶將充滿學生30003時真的點數只可以使用一次。有任何想法嗎?
我想這可能是最好的循環通過每個信用桶和評估他們一次,但我不知道如何看起來。謝謝你的幫助!
期望的結果集是什麼? – 2013-04-09 17:08:50
我讀取這些數據的方式,學生通過課程'100001'滿足了「代數I」和「代數II」的學分要求。如果您只想爲「100001」課程授予一個「學分」,您將需要一種方法來區分他們獲得的學分 - 例如,如果我是學生'30003',我希望它顯示爲「代數II」而不是我的成績單上的「代數I」。 – 2013-04-09 17:22:49
首先匹配單身人士的兩步過程可能是最好的。循環或不循環,您還需要一些方法來確定課程分配到學分的優先級,反之亦然,其中多個課程可滿足要求或課程可滿足多個要求。 – JAQFrost 2013-04-09 18:12:56