如何查看?
问题:每sProgram
个最年长的学生。
表名为Student
。
列是:
sID, sLast, sFirst, sMI, sProgram, sGender, sAge
示例数据:
sID sLast sFirst sMI sProgram sGender sAge
-------------------------------------------------------
001 Right Mc D BSIT M 26
002 Michael John G BSIT M 22
002 Franco James D BSCPE M 20
003 Step Ren D BSECE M 22
我想展示最年长的BSIT学生
所需的输出是:
001 , Right, Mc, D, BSIT, M, 26
答案 0 :(得分:2)
如果您只想要年龄最大的BSID',您可以试试这个:
SELECT *
FROM Student
WHERE sProgram = 'BSIT'
ORDER BY sAge DESC
LIMIT 1
或者如果你想要每个sProgram
的最老的学生,你可以这样做:
SELECT t1.*
FROM Student t1
JOIN (
SELECT sProgram, MAX(sAge) AS sAge FROM Student GROUP BY sProgram
) t2 ON t1.sProgram = t2.sProgram AND t1.sAge = t2.sAge
-- WHERE t1.sProgram = 'BSIT'