Znasz już pojedyncze katalogi. Teraz nauczę Cię budować katalogi wielokolumnowe i sprzątać te, które przestały służyć Bibliotece.
Czasem przeszukujemy regały po dwóch rubrykach naraz - na przykład szukamy książek konkretnego autora w danej kategorii. Wtedy zakładamy indeks złożony - jeden katalog spisujący zwoje według kilku kolumn:
1CREATE INDEX idx_autor_kat ON ksiazki(autor_id, kategoria_id);Taki indeks przyspieszy zapytanie filtrujące po obu kolumnach jednocześnie.
W indeksie złożonym kolejność kolumn nie jest dowolna. Katalog jest posortowany najpierw według pierwszej kolumny, potem - w jej obrębie - według drugiej. Działa najlepiej, gdy filtrujesz po pierwszej kolumnie (lub po pierwszej i drugiej razem).
Indeks
(autor_id, kategoria_id) świetnie pomoże, gdy znasz autor_id. Jeśli filtrujesz tylko po kategoria_id - ten konkretny katalog niewiele pomoże. To jak katalog ułożony najpierw według autora: szybko znajdziesz autora, ale samej kategorii w nim nie wyszukasz wprost.Zbędny katalog to ciężar - spowalnia zapisy i zajmuje miejsce. Gdy indeks przestaje być potrzebny, usuwamy go poleceniem DROP INDEX:
1DROP INDEX idx_tytul ON ksiazki;Czytamy: "Usuń katalog idx_tytul z regału ksiazki". Sam regał i jego zwoje zostają nietknięte - znika jedynie spis, który je porządkował.