sql >> Database teknologi >  >> RDS >> Oracle

Optimering af Oracle-forespørgsel

Prøv dette:

SELECT MAX(verification_id)
  FROM VERIFICATION_TABLE
 WHERE head = 687422
   AND mbr = 23102
   AND TRIM(lname) = '.iq bzw'
   AND TRUNCATE(dob) = TO_DATE('08/10/2004')
   AND system_code = 'M';

Fjern den TRUNCATE() hvis dob har ikke tid på det i forvejen, set ud fra det (fødselsdato?) er det måske ikke. Tidligere har du brug for noget indekseringsarbejde. Hvis du spørger så meget i denne stil, vil jeg indeksere mbr og head i et indeks med 2 kolonner, hvis du sagde, hvad kolonnerne betyder, ville det hjælpe med at bestemme den bedste indeksering her.



  1. Rails 3 app med PostgreSQL - Få listen over beskeder grupperet efter konvertering

  2. Oracle tabel dynamisk partition

  3. Databasedesign:3 typer brugere, separat eller én tabel?

  4. indstil kun nuværende_tidsstempel ved indsættelse af en ny række