Poprawną odpowiedzią jest UNION, ponieważ to operator zbiorów, który scala wyniki dwóch zapytań SELECT w jeden wspólny wynik. Stosuje się go, gdy chcesz "dokleić" do siebie rekordy zwracane przez dwa SELECT-y (np. z różnych tabel), a nie zestawiać kolumn z dwóch tabel w jednym wierszu.
W praktyce oba zapytania połączone przez UNION muszą zwracać zgodną liczbę kolumn oraz zgodne (lub kompatybilne) typy danych w odpowiadających sobie kolumnach. Standardowo UNION usuwa duplikaty w wyniku końcowym; jeśli chcesz zachować wszystkie wiersze, używa się wariantu UNION ALL.
Dlaczego pozostałe odpowiedzi są niepoprawne?
- DISTINCT nie łączy dwóch zapytań. To modyfikator pojedynczego SELECT, który usuwa powtarzające się wiersze (lub kombinacje wartości) w obrębie jednego wyniku.
- JOIN służy do łączenia tabel w ramach jednego zapytania na podstawie warunku złączenia. JOIN tworzy wynik przez dopasowanie wierszy (relacje między tabelami), a nie przez "doklejenie" jednego zestawu wierszy pod drugi.
- AS nadaje alias kolumnie lub tabeli (ułatwia czytelność i odwołania), ale nie jest operatorem do łączenia wyników wielu SELECT-ów w jeden zbiór.
Wskazówka egzaminacyjna: jeśli w treści jest mowa o "połączeniu wyników dwóch kwerend SELECT w jeden zbiór", myśl o operatorach zbiorów (UNION). Jeśli mowa o łączeniu danych "z dwóch tabel w jednym wierszu", wtedy zwykle chodzi o JOIN.