Trong oracle viết câu lệnh SQL hiện thị top những bảng có nhiều bản ghi nhất
Để hiển thị top những bảng có nhiều bản ghi nhất trong Oracle, bạn có thể sử dụng truy vấn SQL dựa trên DBA_TABLES hoặc ALL_TABLES cùng với NUM_ROWS, giá trị này lưu trữ số lượng bản ghi trong bảng (nếu bảng đã được phân tích thống kê). Bạn có thể kết hợp với các hàm ROWNUM và sắp xếp theo NUM_ROWS để hiển thị top N bảng có nhiều bản ghi nhất.
Dưới đây là câu truy vấn để hiển thị top 10 bảng có nhiều bản ghi nhất trong một schema:
SELECT table_name, num_rows FROM all_tables WHERE owner = 'SCHEMA_NAME' ORDER BY num_rows DESC FETCH FIRST 10 ROWS ONLY;
Giải thích:
all_tables: Truy xuất thông tin về tất cả các bảng mà người dùng có quyền truy cập.owner = 'SCHEMA_NAME': Thay thế'SCHEMA_NAME'bằng tên schema bạn muốn kiểm tra.ORDER BY num_rows DESC: Sắp xếp các bảng theo số lượng bản ghi giảm dần.FETCH FIRST 10 ROWS ONLY: Lấy top 10 bảng.
Lưu ý: Cột NUM_ROWS chỉ có dữ liệu chính xác nếu bảng đã được phân tích thống kê bằng lệnh ANALYZE hoặc DBMS_STATS. Nếu chưa có, bạn có thể chạy lệnh phân tích thống kê như sau:
EXEC DBMS_STATS.GATHER_SCHEMA_STATS('SCHEMA_NAME');
Bài liên quan trong #Oracle
-
Xử lý Deadlock trong Oracle – Nguyên nhân, cách phát hiện và giải pháp hiệu quả
minhdev -
Oracle hỗ trợ Container Database ra sao?
minhdev -
Oracle hỗ trợ AI/ML - Công nghệ AI và Machine Learning của Oracle Database
minhdev -
Các xu hướng mới trong Oracle Database: Cập nhật xu hướng công nghệ 2025
minhdev -
Cách sử dụng CASE WHEN trong Oracle như thế nào
minhu · 💬 2