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

Langsom forespørgsel i Java af JDBC, men ikke i andre systemer (TOAD)

uden yderligere information, kan vi kun antage, at et indeks ikke bliver brugt med funktionen to_number() anvendt på kolonnen. Som vist i dette SO-spørgsmål , kan en typekonvertering forhindre optimeringsværktøjet i at bruge et indeks.

Generelt:

  • når du tilføjer en funktion til en kolonne (dvs.:to_number(id) ) optimeringsværktøjet vil ikke være i stand til at bruge de almindelige indekser på den kolonne,
  • hvis det er muligt, skal du bruge kolonnen rå. For eksempel:i stedet for WHERE trunc(col) = DATE '2009-08-27' du skal bruge:WHERE col >= DATE '2009-08-27' AND col < DATE '2009-08-28'
  • hvis du virkelig skal anvende en funktion til en kolonne, kan du bruge en funktionsbaseret indeks


  1. Hvordan vælger man flere rækker efter deres sammensatte primærnøgler i JOOQ?

  2. Hvordan rejser man en undtagelse i en trigger? Er der en måde at gøre dette på?

  3. Kontrollerer, om en given dato passer mellem en række datoer

  4. MySQL WHERE Dato> 15 dage