Kratki vodič za upotrebu unutarnjih spajanja u SQL-u

Relacijske baze podataka stabilna su u mnogim poduzećima. Stvoreni su računalnim jezikom koji se naziva strukturirani jezik upita (SQL). Ako radite s relacijskim baze podataka, povremeno ćete pregledati ili prikupiti podatke koji se nalaze u više tablica baze podataka.

Što je SQL JOIN izjava?

Izjava SQL JOIN omogućuje spajanje dvije ili više tablica, obično na temelju povezanog stupca, tako da se podaci tretiraju kao da se nalaze u jednoj tablici. Pridruživanje ne mijenja same tablice.

SQL PRIDRUŽITE SE je fleksibilan i funkcionalan. Iako postoji nekoliko vrsta spajanja, unutarnje je spajanje jedno od najjednostavnijih za razumijevanje i upotrebu. Pogledajte sljedeće SQL izjave koje ilustriraju kako kombinirati rezultate iz tri različite tablice pomoću unutarnjeg spajanja.

Primjer unutarnjeg spajanja

Na primjer, uzmi tablice koje sadrže pokretačke programe u jednom stolu i poklapanja vozila u drugom. Unutarnji spoj se događa tamo gdje se i vozilo i vozač nalaze u istom gradu. Unutarnje spajanje odabire sve retke iz obje tablice koji sadrže podudaranje između stupaca lokacije.

instagram viewer

SQL izjava u nastavku kombinira podatke iz tablica Vozači i vozila u slučajevima kada se vozač i vozilo nalaze u istom gradu:

ODABERITE prezime, ime, oznaku
OD vozača, vozila
GDJE vozači.lokacija = vozila.lokacija

Ovaj upit daje sljedeće rezultate:

prezime firstname tag

Pekar Roland H122JM
Smythe Michael D824HA
Smythe Michael P091YF
Jacobs Abraham J291QR
Jacobs Abraham L990MT

Sada, proširite ovaj primjer na treću tablicu. Da biste uključili samo vozače i vozila prisutna na lokacijama koje su otvorene vikendom, u upit unesite treću tablicu proširujući JOIN izjavu na sljedeći način:

ODABERITE prezime, ime, oznaku, otvorene_vikende
OD vozača, vozila, lokacija
GDJE vozači.lokacija = vozila.lokacija
I vozila.lokacija = lokacije.lokacija
AND locations.open_weekends = 'Da'

Ovaj upit daje sljedeće rezultate:

prezime ime tag open_weekends

Baker Roland H122JM da
Jacobs Abraham J291QR da
Jacobs Abraham L990MY da

Ovo moćno proširenje osnovne naredbe SQL JOIN kombinira podatke na složen način. Uz kombiniranje tablica s unutarnjim spajanjem, ova tehnika kombinira više tablica s drugim vrstama spajanja.

Ostale vrste pridruživanja

Kada tablice imaju odgovarajući zapis, unutarnja spajanja su na putu, ali ponekad jedna tablica nema povezani zapis za podatke na kojima je pridruženo, pa upit ne uspije. Ovaj slučaj zahtijeva vanjski spoj, koji uključuje rezultate koji postoje u jednoj tablici, ali nemaju odgovarajuće podudaranje u pridruženoj tablici.

Uz to, možete odabrati upotrebu druge vrste spajanja, ovisno o okolnostima. Ove druge vrste pridruživanja su:

  • Lijevi vanjski spoj (lijevo spajanje): Sadrži svaki zapis iz lijeve tablice, čak i ako desna tablica nema odgovarajući zapis.
  • Desni vanjski spoj (desno pridruživanje): Vraća sve relevantne informacije iz desne tablice, čak i ako lijeva tablica nema podudaranje.
  • Potpuno pridruživanje: Odabire sve zapise iz dvije tablice bez obzira imaju li podudarni uvjet pridruživanja ili ne.
instagram story viewer