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

การแบ่งหน้า (Pagination) ด้วย LIMIT และ OFFSET ใน MySQL


ใช้ LIMIT offset, row_count หรือ LIMIT row_count OFFSET offset

สร้างตาราง limitoffsetDemo 11 แถว:

mysql> CREATE TABLE limitoffsetDemo ( id INT, FirstName VARCHAR(200) );
-- INSERT 11 rows ...

แสดงแถวที่ 8-11 (ข้าม 7 แถวแรก เอา 4 แถว):

mysql> SELECT * FROM limitoffsetDemo LIMIT 7, 4;
+----+-----------+
| id | FirstName |
+----+-----------+
| 8  | John      |
| 9  | Johnson   |
| 10 | Jason     |
| 11 | Bk        |
+----+-----------+

ไวยากรณ์:

  • LIMIT offset, row_count - offset เริ่มจาก 0
  • LIMIT row_count OFFSET offset - มาตรฐาน SQL

สำหรับ Pagination: หน้าที่ n (ขนาดหน้า size) ใช้ OFFSET (n-1)*size LIMIT size