Oracle
 sql >> база данни >  >> RDS >> Oracle

Страниране на резултатите от заявката на Oracle без метод за достъп до данни TABLE FULL SCAN

Първо:Пълното сканиране на маса не винаги е дяволът.

  1. Проверете в плана си за обяснение разходите за вашата заявка без пагинация
  2. Проверете го във вашето решение за пагинация

Освен това, когато правите тестове, опитайте се да използвате големи таблици с високи стойности на страниране

Допълнителни точки:

  • Пагинирането без подреждане винаги е опасно, защото не можете да сте сигурни в какъв ред Oracle предоставя вашия резултат за следващата ви „страница“ -> възможни невъзпроизводими резултати
  • Също така в подреден резултат е възможно „нов запис“ в страница преди текущия ви „изглед“ да повлияе на вашата „следваща страница“

С изключение на това, че искате да "съхраните" заявка в DB и да получите данните, страница по страница, докато нещо не се промени в подчертаните данни?




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. конфигурирайте php с oracle

  2. JUnit/HSQLDB:Как да заобиколите грешки със синтаксиса на Oracle при тестване с помощта на HSQLDB (без привилегия и/или без DUAL обект)

  3. Използване на pl-sql процедура или курсор, за да изберете първите 3 ранга

  4. Функцията ORDER BY не работи в Oracle

  5. Oracle обединява константите в една таблица