有以下一张测试表score
从中我们可以看到分数最高的是97
分,姓名是 n3
课程是math
我们要查询出是谁取得了最高分数以及课程。那么我们用以下SQL
尝试一下:
select max(score), name, course from score
查询出来的结果是这样的
显然是不正确的,说明max()
函数并不能这样使用。那么正确的使用方式是怎样的呢?
select score,name,course from score where score = (select max(score) from score)
结果是这样的:
ok,这就是我们要的结果。