Theo Tom Kyte:"Trừ khi và cho đến khi bạn thêm" order by "vào một truy vấn, bạn không thể nói BẤT CỨ ĐIỀU GÌ về thứ tự của các hàng được trả về. Chà, ngắn gọn là" bạn không thể dựa vào thứ tự của các hàng được trả về "."
Xem câu hỏi này tại asktom.com.
Về phần ROWNUM, nó không tồn tại về mặt vật lý nên không thể "giải phóng" được. ROWNUM được chỉ định sau khi bản ghi được truy xuất từ bảng, đó là lý do tại sao "WHERE ROWNUM =5" sẽ luôn không chọn được bất kỳ bản ghi nào.
@ammoQ:bạn có thể muốn đọc bài viết AskTom này trên GROUP BY đặt hàng. Tóm lại:
Liệu một mệnh đề Nhóm Theo trong một đánh giá truy vấn có đảm bảo rằng dữ liệu đầu ra sẽ được sắp xếp trên cột Nhóm Theo không, ngay cả khi KHÔNG có Lệnh Byclause?
và chúng tôi đã nói ...
TUYỆT ĐỐI KHÔNG ĐƯỢC,
Nó không bao giờ có, nó không bao giờ làm, nó sẽ không bao giờ.