Brawo, @name! Wyszedłeś z Labiryntu Zapytań, nie gubiąc nici Ariadny. Zagnieżdżone poszukiwania nie mają już przed Tobą tajemnic. To była jedna z najtrudniejszych części Wielkiej Biblioteki - wielu skrybów gubiło się w jej zaułkach na całe dni. Ty przeszedłeś przez nie pewnym krokiem.
Pamiętaj najważniejszą zasadę Labiryntu: zawsze czytaj zapytanie od środka na zewnątrz. Najpierw zrozum, co liczy lub zwraca podzapytanie wewnętrzne, a dopiero potem, jak korzysta z tego zapytanie zewnętrzne. Dzięki temu nawet najbardziej zawiłe zagnieżdżenie stanie się czytelne.
WHERE (np. ze średnią AVG) lub na liście kolumn SELECT.NOT IN działa odwrotnie.FROM. w MySQL wymaga aliasu.AND.| Narzędzie | Pytanie, na które odpowiada | |-----------|------------------------------| | Podzapytanie skalarne | "Jak ten wiersz wypada na tle obliczenia?" | |
IN + podzapytanie | "Czy wartość jest na tej liście?" |
| Podzapytanie skorelowane | "Co po drugiej stronie pasuje do tego wiersza?" |
| EXISTS / NOT EXISTS | "Czy powiązany zwój istnieje, czy go brak?" |
| Tabela pochodna (FROM) | "Policz coś na wyniku innego zapytania" |
| UNION / UNION ALL | "Połącz dwie listy w jedną" |W kolejnej lokacji wejdziemy do Sali Indeksów, gdzie nauczysz się przyspieszać poszukiwania - by Biblioteka odnajdywała zwoje w mgnieniu oka, nawet wśród setek tysięcy ksiąg. Ruszamy dalej!
@name