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

แถวใดที่ส่งคืนขณะใช้ LIMIT กับ OFFSET ใน MySQL


สมมติว่า LIMIT เป็น 4 และ OFFSET คือ 6 จากนั้นจะคืนค่าแถวจาก 7 เป็น 10 เช่น จะลงท้ายด้วยแถวที่ 10 LIMIT 4 และ OFFSET 6 จะคืนค่าแถว 7,8,9,10

คุณสามารถเข้าใจแนวคิดข้างต้นได้โดยใช้ LIMIT และ OFFSET เรามาสร้างตารางกันเถอะ

mysql> สร้างตาราง LimitOffsettable -> ( -> Id int -> );ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.60 วินาที)

ให้เราแทรกบันทึกบางอย่างในตาราง แบบสอบถามมีดังต่อไปนี้ −

Mysql> แทรกลงในค่า LimitOffsettable(1); Query OK, 1 แถวได้รับผลกระทบ (0.15 วินาที)mysql> แทรกลงในค่า LimitOffsettable (2); Query OK, 1 แถวที่ได้รับผลกระทบ (0.21 วินาที)mysql> แทรกลงในค่า LimitOffsettable ( 3); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที) mysql> แทรกลงในค่า LimitOffsettable (4) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที) mysql> แทรกลงในค่า LimitOffsettable (5) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ ( 0.12 วินาที) mysql> แทรกลงในค่า LimitOffsettable (6); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.11 วินาที) mysql> แทรกลงในค่า LimitOffsettable (7) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที) mysql> แทรกลงในค่า LimitOffsettable ( 8); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.11 วินาที) mysql> แทรกลงในค่า LimitOffsettable (9); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.09 วินาที) mysql> แทรกลงในค่า LimitOffsettable (10) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ ( 0.11 วินาที) mysql> แทรกลงในค่า LimitOffsettable (11); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที) mysql> แทรกลงในค่า LimitOffsettable (12); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.11 วินาที) mysql> แทรกลงใน L imitOffsettable values(13);Query OK, 1 แถวได้รับผลกระทบ (0.13 วินาที)\

คุณสามารถแสดงระเบียนทั้งหมดที่แทรกไว้ด้านบนโดยใช้คำสั่ง select แบบสอบถามมีดังต่อไปนี้ −

mysql> เลือก *จาก LimitOffsettable;

นี่คือผลลัพธ์ -

<ก่อนหน้า>+------+| รหัส |+------+| 1 || 2 || 3 || 4 || 5 || 6 || 7 || 8 || 9 || 10 || 11 || 12 || 13 |+------+13 แถวในชุด (0.00 วินาที)

ใช้ LIMIT 4 และ OFFSET 6 ที่เริ่มต้นแถวจาก 7 ถึง 10 (เช่น 7,8,9,10)

แบบสอบถามมีดังต่อไปนี้ −

mysql> เลือก *จาก LimitOffsettable LIMIT 4 OFFSET 6;

นี่คือผลลัพธ์ที่ส่งคืนแถว -

<ก่อนหน้า>+------+| รหัส |+------+| 7 || 8 || 9 || 10 |+------+4 แถวในชุด (0.00 วินาที)