Projektujesz zapytanie SQL łączące tabele Klienci oraz Zamowienia. Chcesz wyświetlić pełną listę klientów, w tym również tych, którzy nie złożyli jeszcze żadnego zamówienia (w ich przypadku pola dotyczące zamówień mają zawierać wartości NULL). Którego typu złączenia należy użyć, przyjmując, że tabela Klienci znajduje się po lewej stronie operatora złączenia?
Projektujesz zapytanie SQL łączące tabele Klienci oraz Zamowienia. Chcesz wyświetlić pełną listę klientów, w tym również tych, którzy nie złożyli jeszcze żadnego zamówienia (w ich przypadku pola dotyczące zamówień mają zawierać wartości NULL). Którego typu złączenia należy użyć, przyjmując, że tabela Klienci znajduje się po lewej stronie operatora złączenia?
Wyjaśnienie i uzasadnienie dydaktyczne
Poprawna odpowiedź: B (LEFT JOIN)
Ponieważ złączenie LEFT JOIN (lub LEFT OUTER JOIN) pobiera wszystkie rekordy z lewej tabeli (w tym przypadku Klienci) i dopasowuje do nich rekordy z prawej tabeli (Zamowienia). Jeśli dopasowania brak, wstawiane są wartości NULL.
Opcja A jest niepoprawna, ponieważ INNER JOIN (złączenie wewnętrzne) zwróciłoby wyłącznie tych klientów, którzy posiadają co najmniej jedno zamówienie. Opcja C zwróciłaby wszystkie zamówienia i tylko dopasowanych klientów, co byłoby odwrotnością pożądanego rezultatu. Opcja D jest niepoprawna, ponieważ CROSS JOIN tworzy iloczyn kartezjański łączący każdy wiersz pierwszej tabeli z każdym wierszem drugiej tabeli.
Dlaczego pozostałe opcje są nieprawidłowe?
- A: Zapytanie
INNER JOINzawiera nieprawidłową składnię SQL lub zwraca niewłaściwy zestaw danych. - C: Zapytanie
RIGHT JOINzawiera nieprawidłową składnię SQL lub zwraca niewłaściwy zestaw danych. - D: Zapytanie
CROSS JOINzawiera nieprawidłową składnię SQL lub zwraca niewłaściwy zestaw danych.
Chcesz poćwiczyć całą kwalifikację INF.03?
Egzamin próbny na czas, nauka działami, losowe pytanie albo przegląd całej bazy — wszystko w przeglądarce i bez zakładania konta.
Pojęcia z tego pytania
- Kwerenda / Zapytanie SQLSformułowane w języku SQL żądanie skierowane do systemu bazy danych w celu wyszukania, dodania, modyfikacji lub usunięcia informacji.
- Złączenia tabel (JOIN) w SQLOperacja łącząca kolumny z dwóch lub więcej tabel na podstawie powiązanych między nimi kolumn (zazwyczaj relacji klucz obcy - klucz główny).
- Metody tablicowe w JS (push, pop, map, filter, forEach, splice)Funkcje wbudowane w prototyp tablic służące do mutowania zawartości, transformacji, filtrowania i iteracji po elementach.
Podobne pytania z działu „Sql zlaczenia i agregacja”
Ten sam obszar materiału z kwalifikacji INF.03. W całej bazie znajdziesz 43 pytań z tego działu.
- #63
Którego ze słów kluczowych języka SQL należy użyć, aby wyeliminować duplikaty?
- #106
Aby policzyć wszystkie wiersze tabeli Koty należy użyć polecenia:
- #158
W bazie danych, w celu uporządkowania listy uczniów według roku urodzenia, należy użyć polecenia
- #232
Zdefiniowano bazę danych z tabelą mieszkancy o polach: nazwisko, imie, miasto. Następnie stworzono następujące zapytanie do bazy: SELECT nazwisko, imie FROM mieszkancy WHERE miasto="Poznań" UNION ALL SELECT nazwisko, imie FROM mieszkancy WHERE miasto="Kraków"; Wskaż zapytanie, które zwróci identyczne dane:
- #308
Dana jest tabela programiści o polach: id, nick, ilosc_kodu, ocena. Pole ilosc_kodu zawiera liczbę linii kodu napisanych przez programistę w danym miesiącu. Aby policzyć sumę linii kodu, który napisali wszyscy programiści, należy użyć polecenia