Loading:


    SQL JOIN - co to jest, kiedy używać oraz jak stosować?

    3. Pierwszy prosty przykład JOIN


    W porządku, nadszedł czas na wystartowanie wszystkiego oraz dostarczenie pierwszych zamówień do naszych klientów. Posiadamy już pierwsze wpisy w tabelach:

     

    klient_id klient_imie
    1 Jan
    2 Tomek
    3 Dawid
    4 Adam

     

    condom_kolor klient_id
    czerwony 1
    niebieski 3
    żółty 4
    fioletowy 1
    czarny 0
    zielony 1
    biały 3
    brązowy 0



    Hm, wygląda na to, że ktoś chce wypróbować nasze produkty już teraz. Więc aby znaleźć jakie kolory prezerwatyw zamówił Jan (ID #1), nasz najlepszy klient, należy napisać poniższy kod:


    SELECT * FROM klienci
    JOIN produkty ON
    klienci.klient_id = produkty.klient_id
    WHERE klienci.klient_id = 1;

    Zatrzymajmy się na chwile tutaj i opiszmy ten 4 linijkowy kod (te zapytanie moglibyśmy napisać również w jednej linii, dla SQL nie ma to znaczenia, jednak gdy rozbijemy zapytanie na więcej linii wtedy kod jest bardziej czytelny).

     

    Pierwsza linia informuje o pobraniu oraz wyświetleniu wszystkich kolumn (znak gwiazdki *) z dwóch tabel: klienci oraz produkty.

     

    Druga linia mówi o łączeniu tabeli klientów z tabela produkty, warunek ON wskazuje kiedy wyświetlić rekordy, w tym przypadku SQL wyświetli rekordy które mają te same wpisy ID klientów.

     

    Trzecia linia jest opcjonalna, wskazuje ona jakie wpisy oprócz wszystkie pasujących ID klientów wyszczególnić, jeśli pominęlibyśmy tą linie wtedy została by nam wyświelona lista wszystkich klientów oraz ich zamówień.


    Wynikiem tego zapytania będzie tabela:

    klient_id klient_imie condom_kolor klient_id
    1 Jan czerwony 1
    1 Jan fioletowy 1
    1 Jan zielony 1



    Dalsza czê¶æ: 1 2 3 4 5 6 7

    Napisz Artyku³






    Dodano przez: divix
    Ranga: Administrator serwisu Punktów: 0
    Komentarze użytkowników
    Pisząc kod lepiej unikać RIGHT JOIN - w razie konieczności obsługi SQLite będą problemy, bo SQLite ma tylko LEFT JOIN.
    autor: freebox | 13031 | 2014-10-26 08:08:27


      • Tre¶æ komentarza
        Kod do komentarza (opcjonalnie)
        PHP JavaScript MySQL Smarty SQL HTML CSS ActionScript
        Autor
        Token
        token

         

         








    funkcje.net
    Wszelkie prawa zastrzeżone©. | Funkcje.net 2008-2025 v.1.5 | design: diviXdesign & rainbowcolors