聚合SQL函数MAX

时间:2017-03-07 00:51:01

标签: mysql sql aggregate-functions

我有2张桌子。学生和考试。我想创建一个查询,该查询获取学生的姓名(名字和姓氏),该学生在" test.test_results"中获得最高价值。我尝试了2个查询,但两个都没有给我想要的输出:

 SELECT student.studentFirstName, student.studentLastName, test.test_results,  FROM student INNER JOIN test ON student.studentID = test.studentID where MAX(test.test_results) ;

我认为此查询错误并给我一个错误。

   SELECT student.studentFirstName, student.studentLastName, test.test_results, MAX(test.test_results)  FROM student INNER JOIN test ON student.studentID = test.studentID;

此查询运行并向我提供获得最高结果的学生,但它会创建一个额外的列名为" MAX(test.test_result)"

如何进行查询,该查询为我提供了从表格测试中获得最高test_results的学生的姓名。

1 个答案:

答案 0 :(得分:0)

您可以使用子查询查找最高测试结果,然后根据该值从学生中选择一行。

SELECT student.studentFirstName, student.studentLastName, test.test_results FROM student INNER JOIN test ON student.studentID = test.studentID WHERE test.test_results = (SELECT MAX(test_results) FROM test)

在这里SELECT MAX(test_result) FROM test,然后选择与该值相关联的学生。

相关问题