Oct 29, 2023

SQL JOIN (Spajanje) Operacije

JOIN u SQL-u se koristi za spajanje podataka iz više tabela na osnovu određenih uslova. Postoje različite vrste JOIN operacija:

INNER JOIN (Unutarnji JOIN):

INNER JOIN vraća samo redove koji imaju podudaranja u obe tabelama koje se spajaju.

INNER JOIN Primer
    
    SELECT Narudzba.NarudzbaID, Kupac.Ime
    FROM Narudzba
    INNER JOIN Kupac ON Narudzba.KupacID = Kupac.KupacID;
    
    

Ovaj upit će spojiti tabelu "Narudzba" sa tabelom "Kupac" na osnovu zajedničkog polja "KupacID" i vratiti podatke o narudžbama i imenima kupaca.

LEFT JOIN (Levi JOIN):

LEFT JOIN vraća sve redove iz leve tabele i odgovarajuće redove iz desne tabele.

LEFT JOIN Primer
    
    SELECT Radnik.Ime, Radnik.Pozicija, Projekat.Naziv
    FROM Radnik
    LEFT JOIN Projekat ON Radnik.RadnikID = Projekat.RadnikID;
    
    

Ovaj upit će spojiti tabelu "Radnik" sa tabelom "Projekat" na osnovu zajedničkog polja "RadnikID" i prikazati sve radnike i projekte kojima su dodeljeni, uključujući i one radnike koji nisu dodeljeni projektima.

RIGHT JOIN (Desni JOIN):

RIGHT JOIN je sličan LEFT JOIN-u, ali vraća sve redove iz desne tabele i odgovarajuće redove iz leve tabele.

RIGHT JOIN Primer
    
    SELECT Narudzba.NarudzbaID, Kupac.Ime
    FROM Narudzba
    RIGHT JOIN Kupac ON Narudzba.KupacID = Kupac.KupacID;
    
    

Ovaj upit će spojiti tabelu "Narudzba" sa tabelom "Kupac" na osnovu zajedničkog polja "KupacID" i prikazati sve narudžbe i kupce, uključujući i one kupce koji nisu napravili narudžbe.

FULL JOIN (Puni JOIN):

FULL JOIN vraća sve redove iz obe tabele.

FULL JOIN Primer
    
    SELECT Radnik.Ime, Projekat.Naziv
    FROM Radnik
    FULL JOIN Projekat ON Radnik.RadnikID = Projekat.RadnikID;
    
    

Ovaj upit će spojiti tabelu "Radnik" sa tabelom "Projekat" na osnovu zajedničkog polja "RadnikID" i prikazati sve radnike i projekte, uključujući i one koji nemaju podudaranja.

No comments:

Post a Comment