Oracle
 sql >> Baza danych >  >> RDS >> Oracle

jak wygląda indeks B-drzewa w więcej niż 1 kolumnie?

W większości implementacji klucz jest po prostu dłuższym kluczem, który zawiera wszystkie wartości klucza z separatorem. Nie ma tam magii;-)

W twoim przykładzie wartości klucza mogą wyglądać mniej więcej tak

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

Jedną z cech charakterystycznych tych indeksów z kluczami złożonymi jest to, że w niektórych przypadkach pośrednie węzły drzewa mogą być używane do „pokrycia” zapytania.

Na przykład, jeśli zapytanie ma znaleźć nazwę i miasto podane w identyfikatorze, ponieważ identyfikator jest pierwszy w indeksie, indeks może skutecznie wyszukiwać według tego identyfikatora. Będąc w węźle pośrednim, może „przeanalizować” nazwę i miasto z klucza i nie musi przechodzić do węzła liścia, aby przeczytać to samo.

Gdyby jednak zapytanie chciało również wyświetlić numer telefonu, logika podążałaby w dół liścia po znalezieniu pełnego rekordu.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Instalowanie klienta Oracle Instant

  2. SQL wiele kolumn w klauzuli IN

  3. Czy substr czy LIKE są szybsze w Oracle?

  4. Znak ucieczki pl-sql Oracle (dla ' )

  5. Różnica między funkcją tabeli a funkcją potokową?