Strona główna › Pytania INF.03 › Pytanie 1145
INF.03 · pytanie #1145
Tabele Osoby i Adresy są połączone relacją jeden do wielu. Jakie zapytanie SQL należy zapisać, aby korzystając z tej relacji, prawidłowo wyświetlić nazwiska oraz przyporządkowane im miasta?

- ASELECT nazwisko, Miasto FROM Osoby.Adresy_id = Adresy.id FROM Osoby, Adresy;
- BSELECT nazwisko, Miasto FROM Osoby JOIN Adresy ON Osoby.Adresy_id = Adresy.id;
- CSELECT nazwisko, Miasto FROM Osoby, Adresy WHERE Osoby.id = Adresy.id;
- DSELECT nazwisko, Miasto FROM Osoby, Adresy;
Poprawna odpowiedź: B. SELECT nazwisko, Miasto FROM Osoby JOIN Adresy ON Osoby.Adresy_id = Adresy.id;
Kliknij odpowiedź, którą uważasz za poprawną.
Wyjaśnienie
Prawidłowa odpowiedź opiera się na instrukcji SELECT z użyciem JOIN, co jest bardzo ważne przy pracy z relacyjnymi bazami danych. W tym przypadku, zapytanie SELECT jest używane do wyboru dwóch kolumn - 'nazwisko' i 'Miasto' - z połączonych tabel 'Osoby' i 'Adresy'. Wykorzystuje się tutaj złączenie (JOIN), które jest kluczowym konceptem w SQL umożliwiającym łączenie danych z różnych tabel w jednym zapytaniu. Odpowiednia składnia JOIN wymaga określenia dwóch tabel do połączenia oraz warunku łączenia, który w tym przypadku jest 'Osoby.Adresy_id = Adresy.id'. Ten warunek oznacza, że rekordy z obu tabel będą połączone, gdy wartość kolumny 'Adresy_id' w tabeli 'Osoby' będzie równa wartości kolumny 'id' w tabeli 'Adresy'. Jest to typowe użycie klucza obcego ('Adresy_id') do odwołania się do klucza głównego w innej tabeli ('id' w tabeli 'Adresy'). To jest dobry przykład pokazujący, jak praktycznie wykorzystuje się relacje pomiędzy tabelami w SQL.
🤖 Wyjaśnienie generowane przez AI – weryfikuj w oficjalnych źródłach.