SQL สำหรับการดึงข้อมูลล่าสุด โดยใช้บน Oracle Database เป็นดังนี้
ตัวอย่าง จะเป็นการดึงข้อมูล 10 records ล่าสุด
SELECT *
FROM (SELECT ROWNUM rno , my_column
FROM some_table)
WHERE rno > (SELECT (MAX (ROWNUM) - 10)
FROM some_table)
ซึ่งสามารถทำการ ordered หรือเรียงลำดับของ ROWNUM ดังนี้
ROW_NUMBER () OVER (ORDER BY some_column ASC) AS rno
อย่าลืมใส่ index ด้วยนะครับ เพื่อความเร็วของ query ครับ
Related link from Roti