在单个查询中实现 MySQL LIMIT 和 OFFSET,说明其区别

mysqlmysqli database更新于 2023/11/26 22:55:00

LIMIT 说明您想要多少条记录,而 OFFSET 给出从给定位置 +1 开始的记录。让我们首先创建一个表 −

mysql> create table DemoTable
   -> (
   -> Name varchar(100)
   -> );
Query OK, 0 rows affected (1.33 sec)

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

mysql> insert into DemoTable values('John');
Query OK, 1 row affected (0.13 sec)

mysql> insert into DemoTable values('Chris');
Query OK, 1 row affected (0.27 sec)

mysql> insert into DemoTable values('David');
Query OK, 1 row affected (0.27 sec)

mysql> insert into DemoTable values('Bob');
Query OK, 1 row affected (0.26 sec)

mysql> insert into DemoTable values('Sam');
Query OK, 1 row affected (0.22 sec)

mysql> insert into DemoTable values('Mike');
Query OK, 1 row affected (0.59 sec)

mysql> insert into DemoTable values('Carol');
Query OK, 1 row affected (0.14 sec)

mysql> insert into DemoTable values('Robert');
Query OK, 1 row affected (0.60 sec)

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

mysql> select *from DemoTable;

输出

这将产生以下输出 −

+--------+
| Name   |
+--------+
| John   |
| Chris  |
| David  |
| Bob    |
| Sam    |
| Mike   |
| Carol  |
| Robert |
+--------+
8 rows in set (0.00 sec)

以下是实现 MySQL 限制偏移量的查询 −

mysql> select *from DemoTable limit 4 offset 3;

输出

这将产生以下输出 −

+-------+
| Name  |
+-------+
| Bob   |
| Sam   |
| Mike  |
| Carol |
+-------+
4 rows in set (0.00 sec)

相关文章