如何从包含学生分数的表中获取第 2 高的值?


要获取第 2 高的值,请使用 ORDER BY DESC 以及 LIMIT 1,1。我们首先创建一个表 −

mysql> create table DemoTable
(
   StudentScore int
);
Query OK, 0 rows affected (0.56 sec)

使用插入命令在表中插入一些记录 −

mysql> insert into DemoTable values(89);
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values(69);
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable values(97);
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable values(99);
Query OK, 1 row affected (0.12 sec)

使用 select 语句从表中显示所有记录 −

mysql> select *from DemoTable;

这会生成以下输出 −

+--------------+
| StudentScore |
+--------------+
|           89 |
|           69 |
|           97 |
|           99 |
+--------------+
4 rows in set (0.00 sec)

以下是获取第 2 高值所需的查询 −

mysql> select *from DemoTable order by StudentScore DESC limit 1,1;

这会生成以下输出 −

+--------------+
| StudentScore |
+--------------+
|           97 |
+--------------+
1 row in set (0.00 sec)

更新于: 2019 年 9 月 25 日

608 次浏览

开启您的 职业生涯

完成课程并获得认证

开始吧
广告