php - 从MySQL表中获取第二大标记

标签 php mysql

我有一个表student,其中包含字段 id、name 和 mark。 我需要获取分数第二大的学生姓名。

我尝试过:

SELECT DISTINCT name FROM stud ORDER BY mark DESC LIMIT 2,1

但这仅返回一个具有第二大分数的学生姓名。

如果其中许多学生的分数第二大,我需要列出所有学生的姓名。

我该怎么做?

最佳答案

SELECT DISTINCT
  name, mark
FROM
  stud 
WHERE
  mark = (SELECT MAX(mark) FROM stud WHERE mark < (SELECT MAX(mark) FROM stud))
ORDER BY
  name

关于php - 从MySQL表中获取第二大标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7131331/

相关文章:

php - 在 PHP 中从头到尾读取 CSV

php - Tagmanager Jquery - ajax 文件必须是什么样子?

MySQL:在可能为 NULL 的字段上加入表

excel - 如何使用VBA将Excel日期时间单元格保存到MySQL中?

MySQL SUM() 始终返回 0 值

php - 在 php 中显示 c++ 代码

php - 使用 "php"命令运行的 PHP 脚本是否受超时限制影响?

PHP - 命名空间和自动加载问题

mysql - SQL 选择并连接所有行的值

PHP 变量和 MySQL LIKE 查询不起作用