Trong Oracle, các giá trị Rownum được chỉ định sau giai đoạn lọc của truy vấn - chúng không phải là các hàng của bảng, chúng là các hàng của tập kết quả truy vấn.
Vì vậy, hàng đầu tiên quay lại sẽ luôn được cung cấp rownum 1, hàng thứ hai quay lại rownum 2, v.v.
Giá trị rownum chỉ tăng lên sau khi nó được chỉ định, vì vậy bất kỳ truy vấn nào như
select * from t where ROWNUM > 1
sẽ không bao giờ trả về bất kỳ kết quả nào. Truy vấn này cho biết 'Tôi không muốn thấy hàng đầu tiên được trả lại cho tôi, chỉ những hàng sau đó' là một nghịch lý nên không có gì được trả lại.
Xem Hỏi Tom:Trên ROWNUM và Kết quả Giới hạn để biết thêm chi tiết.