2012-11-05 30 views

回答

3

按StudentNum,Year和SessionTerm分組。這樣,你可以計算記錄的數量,只返回那些有一個記錄。由於該分組,您需要在主題代碼上獲得最大值(或最小值)。 1條記錄的最大值將只是那條記錄,所以結果是正確的,並且查詢會很快,即使它看起來很奇怪。

SELECT 
    StudentNum, 
    max(RSubjectCode) as RSubjectCode, 
    Year, 
    SessionTerm 
FROM 
    <TABLE> 
WHERE 
    Year ='2012' 
    AND SESSIONTERM = '3' 
GROUP BY 
    StudentNum, 
    Year, 
    SessionTerm 
HAVING 
    count(*) = 1