使用 MySQL LIMIT、OFFSET 進行分頁?


首先,我們需要建立一個帶有某些記錄的表,然後我們將在 limit 和 offset 的幫助下對其進行分頁。

使用 CREATE 命令建立表。查詢如下 −

mysql> CREATE table limitoffsetDemo
-> (
-> id int,
-> FisrtName varchar(200)
-> );
Query OK, 0 rows affected (0.45 sec)

建立表後,我們將使用 INSERT 命令插入記錄。

插入記錄

mysql> INSERT into limitoffsetDemo values(1,'John');
Query OK, 1 row affected (0.11 sec)

mysql> INSERT into limitoffsetDemo values(2,'Bob');
Query OK, 1 row affected (0.16 sec)

mysql> INSERT into limitoffsetDemo values(3,'David');
Query OK, 1 row affected (0.13 sec)

mysql> INSERT into limitoffsetDemo values(4,'carol');
Query OK, 1 row affected (0.19 sec)

mysql> INSERT into limitoffsetDemo values(5,'Taylor');
Query OK, 1 row affected (0.10 sec)

mysql> INSERT into limitoffsetDemo values(1,'John');
Query OK, 1 row affected (0.24 sec)

mysql> INSERT into limitoffsetDemo values(7,'Smith');
Query OK, 1 row affected (0.13 sec)

mysql> INSERT into limitoffsetDemo values(8,'John');
Query OK, 1 row affected (0.12 sec)

mysql> INSERT into limitoffsetDemo values(9,'Johnson');
Query OK, 1 row affected (0.11 sec)

mysql> INSERT into limitoffsetDemo values(10,'Jason');
Query OK, 1 row affected (0.08 sec)

mysql> INSERT into limitoffsetDemo values(11,'Bk');
Query OK, 1 row affected (0.17 sec)

插入記錄後,我們可以使用 SELECT 命令檢查表中存在多少條記錄。查詢如下 −

mysql> SELECT * from limitoffsetDemo;

執行上述查詢後,我們將獲得以下輸出

+------+-----------+
| id   | FisrtName |
+------+-----------+
| 1    | John      |
| 2    | Bob       |
| 3    | David     |
| 4    | carol     |
| 5    | Taylor    |
| 1    | John      |
| 7    | Smith     |
| 8    | John      |
| 9    | Johnson   |
| 10   | Jason     |
| 11   | Bk        |
+------+-----------+
11 rows in set (0.00 sec)

現在,我有 11 條記錄。要藉助 limit 和 offset 應用分頁,請應用以下語法 −

SELECT * from yourTableName limit value1,value2;

在上述查詢中,value1 表示我們從哪裡需要顯示記錄,value2 表示記錄的數量。

現在,我正在應用上述查詢以獲得結果,如下所示 −

mysql> SELECT * from limitoffsetDemo limit 7,4;

以下是輸出

+------+-----------+
| id   | FirstName |
+------+-----------+
| 8    | John      |
| 9    | Johnson   |
| 10   | Jason     |
| 11   | Bk        |
+------+-----------+
4 rows in set (0.00 sec)

更新於: 25-6-2020

6000+ 人次瀏覽

啟動你的 職業生涯

完成課程,獲取認證

開始學習
廣告
© . All rights reserved.