RT
忙着复习,看到书上有道题:查询年龄最大的学生的姓名。
因为聚合函数不能出现在WHERE子句中,所以书上说这样写是不对的:
Select Sname From Student WHERE Sage=MAX(Sage)
上面的这点我能理解,但是书上最后没有给出正确的答案。
我自己想了两个解法额但是=L=有可能都是错的。。因为知识有限还没理解透,而且也没装SQL。。所以请大家看看~~
第一种:
Select Sname, MAX(sage) from Student
Group by Sno
第二种:
Select Sname from Student
where Sage IN (
Select MAX(sage) from Student)
--------------------以上,如果错误请教教我正确的应该怎么写,上面的又错在哪里,非常感谢!
忙着复习,看到书上有道题:查询年龄最大的学生的姓名。
因为聚合函数不能出现在WHERE子句中,所以书上说这样写是不对的:
Select Sname From Student WHERE Sage=MAX(Sage)
上面的这点我能理解,但是书上最后没有给出正确的答案。
我自己想了两个解法额但是=L=有可能都是错的。。因为知识有限还没理解透,而且也没装SQL。。所以请大家看看~~
第一种:
Select Sname, MAX(sage) from Student
Group by Sno
第二种:
Select Sname from Student
where Sage IN (
Select MAX(sage) from Student)
--------------------以上,如果错误请教教我正确的应该怎么写,上面的又错在哪里,非常感谢!