Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Jak skrócić czas wykonywania zapytań dla tabeli z dużą ilością danych?

Patrząc na to, co powiedziałeś, nie możesz tworzyć indeksów. Mam nadzieję, że zapytanie wykonuje pełny skan tabeli. Spróbuj równoległej podpowiedzi.

select /*+ full(so) parallel(so, 4) */ 0 test_section, count(1) count, 'DD' test_section_value  
from svc_order so, event e  
where so.svc_order_id = e.svc_order_id  
  and so.entered_date >= to_date('01/01/2012', 'MM/DD/YYYY')  
  and e.event_type = 230 and e.event_level = 'O'  
  and e.current_sched_date between 
      to_date( '09/01/2010 00:00:00', 'MM/DD/YYYY HH24:MI:SS')
      and to_date('09/29/2013 23:59:59', 'MM/DD/YYYY HH24:MI:SS')  
  and (((so.sots_ta = 'N') and (so.action_type = 0)) 
       or  ((so.sots_ta is null) and (so.action_type = 0)) 
       or  ((so.sots_ta = 'N') and (so.action_type is null)))
  and so.company_code = 'LL'


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORA-01000:przekroczono maksymalną liczbę otwartych kursorów podczas korzystania ze Spring SimpleJDBCCall

  2. Pobieranie zliczeń/sum na każdym poziomie zapytania hierarchicznego za pomocą CONNECT BY

  3. Podziel ciąg na tokeny w pl sql

  4. Oracle ignoruje błąd nieprawidłowego identyfikatora w podzapytaniu

  5. Regularna, powtarzająca się interakcja między wyrocznią a inteligentnym kontraktem