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

Бавна заявка в Java от JDBC, но не и в други системи (TOAD)

без допълнителна информация, можем само да приемем, че индексът не се използва с функцията to_number() се прилага към колоната. Както е показано в този SO въпрос , преобразуването на тип може да попречи на оптимизатора да използва индекс.

Като цяло:

  • когато добавите функция към колона (т.е.:to_number(id) ) оптимизаторът няма да може да използва обикновените индекси на тази колона,
  • ако е възможно, трябва да използвате колоната raw. Например:вместо WHERE trunc(col) = DATE '2009-08-27' трябва да използвате:WHERE col >= DATE '2009-08-27' AND col < DATE '2009-08-28'
  • ако наистина трябва да приложите функция към колона, можете да използвате функционално базиран индекс


  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-01795 в Java код

  2. Извикване на запаметена процедура в Java в java програма

  3. Oracle SQL актуализация въз основа на подзаявка между две таблици

  4. CLOB срещу VARCHAR2 и има ли други алтернативи?

  5. Как да внедрим този тригер на Oracle SQL?