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

Решение кога да се създаде индекс на колона на таблица в база данни?

Не създавайте индекси във всяка колона! Това ще забави нещата при операции за вмъкване/изтриване/актуализиране.

Като просто напомняне, можете да създадете индекс в колони, които са често срещани в WHERE , ORDER BY и GROUP BY клаузи. Може да помислите за добавяне на индекс в колони, които се използват за свързване на други таблици (чрез JOIN , например)

Пример:

SELECT col1,col2,col3 FROM my_table WHERE col2=1

Тук създаването на индекс на col2 би помогнало много на тази заявка.

Също така вземете предвид селективността на индекса. Казано по-просто, създайте индекс върху стойности, които имат „голям домейн“, т.е. идентификатори, имена и т.н. Не ги създавайте в колони мъжки/женски.



  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-02299

  2. Уникално ограничение на Oracle и уникален индекс

  3. Слушайте за промени в базата данни на Oracle в .net

  4. OSX 10.9 Mavericks и Eclipse Kepler (4.3.2) или M6 Eclipse Luna (4.4)

  5. pl/sql функцията е извикана колко пъти?