การแบ่งหน้าใน Oracle เขียนเมื่อ 2009.06.30 โดย

ในการเขียนแสดงผลระเบียน (Records) ใน SQL ให้เป็นหน้าๆนั้นใน Oracle ไม่มีคำสั่ง LIMIT เหมือนใน PostgreSQL หรือ MYSQL ดังนั้นการทำ paging จะต้องทำการ nested select เช่นเดียวกับใน MSSQL

ORACLE8
  1. SELECT * FROM (
  2.     SELECT a.*, ROWNUM rn FROM (
  3.         SELECT * FROM table_name
  4.     ) a WHERE ROWNUM <= y
  5. ) WHERE rn >= x

โดย x เป็นระเบียนเริ่มต้นและ y เป็นระเบียนสุดท้าย ส่วน ROWNUM เป็นจำนวนระเบียนที่ได้จากคำสั่ง SELECT โดยแต่ละคำสั่ง SELECT จะมี ROWNUM เป็นของตนเอง




คำเตือนคำเตือน เนื้อหาต่างๆ ในบทความ รวมถึงรูปภาพทั้งหมดในบทความนี้ เป็นความเห็นส่วนตัวของผู้เขียนแต่ละคน ซึ่งแต่ละคนได้ทำการลงทะเบียน และเขียนบทความลงใน Modoeye Articles นี้โดยไม่มีค่าธรรมเนียมใดๆ บทความเหล่านี้เป้าหมายเพื่อการศึกษา และความบันเทิงเท่านั้น การนำส่วนหนึ่งส่วนใดของบทความไปใช้งาน ควรทำการอ้างอิงถึงผู้เขียนและแหล่งที่มาด้วย