Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

จำกัดจำนวนแถวที่ดึงด้วย LIMIT ใน MySQL

ใช้ LIMIT เพื่อดึงข้อมูลแค่ N แถวแรก (หรือข้ามไปก่อนหน้า)

ไวยากรณ์

SELECT * FROM your_table LIMIT offset, row_count;
-- หรือ
SELECT * FROM your_table LIMIT row_count OFFSET offset;

สร้างตารางและเพิ่มข้อมูล 13 แถว

mysql> CREATE TABLE DemoTable (Id INT PRIMARY KEY AUTO_INCREMENT, Name VARCHAR(20));
mysql> INSERT INTO DemoTable(Name) VALUES
    ('John'), ('Larry'), ('Bob'), ('Sam'), ('Mike'), ('David'),
    ('Carol'), ('Ramit'), ('Adam'), ('Chris'), ('Robert'), ('James'), ('Jace');

ดูข้อมูลทั้งหมด

mysql> SELECT * FROM DemoTable;
+----+--------+
| Id | Name   |
+----+--------+
|  1 | John   |
|  2 | Larry  |
|  3 | Bob    |
|  4 | Sam    |
|  5 | Mike   |
|  6 | David  |
|  7 | Carol  |
|  8 | Ramit  |
|  9 | Adam   |
| 10 | Chris  |
| 11 | Robert |
| 12 | James  |
| 13 | Jace   |
+----+--------+

ดึงแค่ 10 แถวแรก (offset=0, count=10)

mysql> SELECT * FROM DemoTable LIMIT 0, 10;
+----+-------+
| Id | Name  |
+----+-------+
|  1 | John  |
|  2 | Larry |
|  3 | Bob   |
|  4 | Sam   |
|  5 | Mike  |
|  6 | David |
|  7 | Carol |
|  8 | Ramit |
|  9 | Adam  |
| 10 | Chris |
+----+-------+

ประยุกต์: ใช้ทำ Pagination — หน้าที่ 2: LIMIT 10, 10, หน้าที่ 3: LIMIT 20, 10 ฯลฯ