ROWNUM Oracle database

Trong Oracle Database, ROWNUM là một pseudocolumn (cột giả) được sử dụng để gán số thứ tự cho các hàng trong một kết quả truy vấn. ROWNUM rất hữu ích trong nhiều tình huống, chẳng hạn như giới hạn số lượng hàng được trả về bởi một truy vấn hoặc tạo số thứ tự cho các hàng.

Dưới đây là một số ví dụ cơ bản về cách sử dụng ROWNUM trong Oracle Database:

1. Giới hạn số lượng hàng trả về

Nếu bạn muốn lấy chỉ 10 hàng đầu tiên từ một bảng, bạn có thể sử dụng ROWNUM như sau:

## lấy 10 rows từ đầu xuống

SELECT * FROM data_big_copy WHERE ROWNUM <= 10;

select * from (SELECT * FROM data_big_copy ORDER BY id ASC) WHERE ROWNUM <= 10 ;

word image 2979 1

## Lấy 10 rows từ dưới lên

select * from (SELECT * FROM data_big_copy ORDER BY id DESC) WHERE ROWNUM <= 10 ;

word image 2979 2

## Lấy thông tin kết quả từ hàng n tới hàng m: sử dụng OFFSET

SELECT * FROM data_big ORDER BY id
OFFSET 9 ROWS FETCH NEXT 11 ROWS ONLY;

word image 2979 3

## sử dụng ROWNUM

select * from (select rownum rnum, content,date_time from data_big_1m) where rnum >5 and rnum <20;

word image 2979 4

2. Sử dụng ROWNUM để đánh số thứ tự các hàng

Bạn có thể sử dụng ROWNUM để thêm một cột số thứ tự vào kết quả truy vấn:

SELECT ROWNUM, column1, column2
FROM your_table;
  • ROWNUM bắt đầu từ 1 và tăng dần cho mỗi hàng trả về.
  • Khi sử dụng ROWNUM với các điều kiện khác hoặc các hàm phân tích phức tạp, bạn có thể cần sử dụng subquery để đảm bảo kết quả như mong muốn.

 

0 0 đánh giá
Đánh giá bài viết
Theo dõi
Thông báo của
guest

0 Góp ý
Phản hồi nội tuyến
Xem tất cả bình luận