Phân trang rất khó; mô hình RDBMS không phù hợp với số lượng lớn các truy vấn tồn tại trong thời gian ngắn với chức năng cuộn trạng thái. Như bạn đã lưu ý, việc sử dụng tài nguyên có xu hướng quá cao.
Bạn có các tùy chọn:
-
LIMIT
vàOFFSET
- Sử dụng con trỏ
- Sao chép kết quả vào một bảng tạm thời hoặc vào bộ nhớ đệm hoặc tương tự, sau đó đọc kết quả từ đó
-
x > id
vàLIMIT
Trong số này, tôi thích x > id
với LIMIT
. Chỉ cần nhớ ID cuối cùng bạn nhìn thấy và yêu cầu ID tiếp theo. Nếu bạn có một chuỗi tăng dần đơn điệu, điều này sẽ đơn giản, đáng tin cậy và đối với các truy vấn đơn giản, nó sẽ hiệu quả.