Witaj @name w sercu mojej pracy - Sali Katalogowej! To tutaj powstał Pinakes, pierwszy katalog w dziejach. Bez niego odnalezienie jednego zwoju wśród setek tysięcy oznaczałoby przejście regał po regale, półka po półce. W świecie MySQL takie żmudne przeglądanie nazywamy pełnym skanowaniem tabeli (full table scan).
Wyobraź sobie, że szukasz książki o tytule Iliada. Bez katalogu musiałbyś rozwinąć każdy zwój i sprawdzić tytuł. Przy milionie zwojów to godziny pracy!
Pinakes zmienia wszystko: spisałem w nim tytuły w porządku alfabetycznym i przy każdym zanotowałem sygnaturę regału. Teraz wystarczy zajrzeć do katalogu, by od razu wiedzieć, gdzie leży zwój.
Indeks to dokładnie to samo - dodatkowa struktura, którą baza tworzy obok tabeli, by szybciej odnajdywać wiersze. Zamiast czytać całą tabelę, MySQL zagląda do indeksu i od razu trafia we właściwe miejsce.
1SELECT * FROM ksiazki WHERE tytul = 'Iliada';Bez indeksu na kolumnie
tytul baza sprawdzi każdy wiersz tabeli ksiazki. Z indeksem - znajdzie Iliadę niemal natychmiast, jak ja w moim katalogu.id).W tej lokacji nauczę Cię budować własne katalogi, czytać plany zapytań i porządkować regały tak, by Biblioteka działała bez zarzutu. Zaczynamy!