MySQL 如何获取表的第一条和最后一条记录

MySQL 如何获取表的第一条和最后一条记录

要获取第一条和最后一条记录,可以使用 UNION。也可以使用 LIMIT 来获取想要的记录数。

首先,让我们创建一个表 −

mysql> CREATE TABLE DemoTable694 (
  EmployeeId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  EmployeeName VARCHAR(100),
  EmployeeSalary INT
);
Query OK, 0 rows affected (0.58 sec)

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

mysql> INSERT INTO DemoTable694(EmployeeName,EmployeeSalary) VALUES('Chris',457647);
Query OK, 1 row affected (0.15 sec)
mysql> INSERT INTO DemoTable694(EmployeeName,EmployeeSalary) VALUES('Robert',90883);
Query OK, 1 row affected (0.25 sec)
mysql> INSERT INTO DemoTable694(EmployeeName,EmployeeSalary) VALUES('David',123532);
Query OK, 1 row affected (0.19 sec)
mysql> INSERT INTO DemoTable694(EmployeeName,EmployeeSalary) VALUES('Mike',989322);
Query OK, 1 row affected (0.22 sec)

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

mysql> SELECT *FROM DemoTable694;

这将生成以下输出 –

+------------+--------------+----------------+
| EmployeeId | EmployeeName | EmployeeSalary |
+------------+--------------+----------------+
| 1          | Chris        | 457647         |
| 2          | Robert       | 90883          |
| 3          | David        | 123532         |
| 4          | Mike         | 989322         |
+------------+--------------+----------------+
4 rows in set (0.00 sec)

以下是获取第一条和最后一条记录的查询语句 –

mysql> (SELECT *FROM DemoTable694 ORDER BY EmployeeId ASC LIMIT 1)
UNION
(SELECT *FROM DemoTable694 ORDER BY EmployeeId DESC LIMIT 1);

这将生成以下输出 –

+------------+--------------+----------------+
| EmployeeId | EmployeeName | EmployeeSalary |
+------------+--------------+----------------+
| 1          | Chris        | 457647         |
| 4          | Mike         | 989322         |
+------------+--------------+----------------+
2 rows in set (0.00 sec)

阅读更多:MySQL 教程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程