sql >> Database >  >> RDS >> Oracle

laat de optimizer alle kolommen van een index gebruiken

we hebben de oorzaak van dit probleem gevonden. We gebruiken JPA/JDBC en de JDBC-datumtypes zijn niet correct gemodelleerd. Terwijl het orakeldatumtype met tweede precisie is, heeft iemand (ik haat hem nu) het "dag" -attribuut in onze entiteit van het type java.sql.Timestamp gemaakt (hoewel het alleen dag is zonder tijd). Het effect is dat Oracle het nodig heeft om elk item in de tabel te casten (gebruik een functie op) om er een Timestamp van te maken voordat het kan worden vergeleken met de Timestamp-queryparameter. Op die manier kan de index niet goed worden gebruikt.




  1. Hoe controleer ik of een waarde al bestaat om duplicaten te voorkomen?

  2. Update-instructie in de opgeslagen procedure van Oracle werkt niet

  3. T-SQL Verwijdert alle rijen uit een tabel wanneer de subquery onjuist is opgemaakt

  4. Door komma's gescheiden resultaten in SQL