Relacja jeden do wielu
Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
Relacja jeden do wielu oznacza, że jeden rekord z pierwszej tabeli może być powiązany z wieloma rekordami z drugiej tabeli.
Przykład
Jeden klient może mieć wiele zgłoszeń:
- tabela
Klienciprzechowuje dane klientów, - tabela
Zgloszeniaprzechowuje zgłoszenia klientów, - każde zgłoszenie należy do jednego klienta.
W takiej sytuacji tabela Zgloszenia zawiera klucz obcy, np. Klienci_id, który wskazuje na pole id w tabeli Klienci.
Schemat logiczny
Klienci.id 1 ---- * Zgloszenia.Klienci_id
Oznacza to, że jeden klient może wystąpić przy wielu zgłoszeniach.
Zapytanie z relacją jeden do wielu
Aby pobrać opis zgłoszenia i nazwisko klienta, należy połączyć tabele:
SELECT opis, nazwisko
FROM Zgloszenia
JOIN Klienci
ON Klienci.id = Zgloszenia.Klienci_id;
Jeśli potrzebne jest konkretne zgłoszenie, dodaje się warunek:
WHERE Zgloszenia.id = 5
Najważniejsze jest rozróżnienie, czy filtr dotyczy klienta, czy zgłoszenia.