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

как изглежда индекс на B-дърво на повече от 1 колона?

При повечето реализации ключът е просто по-дълъг ключ, който включва всички ключови стойности, с разделител. Няма магия;-)

Във вашия пример ключовите стойности могат да изглеждат нещо като

"123499|John Doe|Conway, NH"
"32144|Bill Gates| Seattle, WA"

Една от характеристиките на тези индекси със съставни ключове е, че междинните възли на дървото могат да се използват в някои случаи за „покриване“ на заявката.

Например, ако заявката трябва да намери името и града, дадени на идентификатора, тъй като идентификаторът е първи в индекса, индексът може да търси по това ефективно. Веднъж в междинния възел, той може да „разбира“ името и града от ключа и не е необходимо да отива до листовия възел, за да прочете същото.

Ако обаче заявката искаше да покаже и телефонния номер, тогава логиката ще последва надолу по листа, когато бъде намерен пълният запис.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Открийте дали дадена стойност съдържа поне една цифрова цифра в Oracle

  2. NAME_IN, вграден в Oracle D2k Forms

  3. SQL трасиране, 10046 събитие в Oracle:trcsess, помощна програма tkprof

  4. Как да получа текущата година, използвайки SQL на Oracle?

  5. В Oracle възможно ли е да се ВМЕСНА или АКТУАЛИЗИРА запис чрез изглед?