Vodnik za uporabo notranjih povezav v SQL za skupinske podatke iz več tabel

Uporabite SQL Inner Joins za združevanje podatkov iz treh ali več tabel

Izjave SQL JOIN lahko uporabite za združevanje podatkov iz treh ali več tabel. SQL JOIN je zelo fleksibilen in njegova močna funkcionalnost se lahko uporablja za združevanje podatkov iz več tabel. Oglejmo si stavke SQL, ki vam omogočajo združevanje rezultatov iz treh različnih tabel z uporabo notranjega združevanja.

Notranji primer pridružitve

Na primer, vzemite tabele, ki vsebujejo gonilnike v eni tabeli in ujemanje vozil v drugem. Notranji spoj se pojavi tam, kjer sta voznik in voznik v istem mestu. Notranji pridruži izbere vse vrstice iz obeh tabel, ki vsebujejo ujemanje med stolpci lokacij.

Izjava SQL spodaj združuje podatke iz tabel Vozniki in Vozila v primerih, ko sta voznik in vozilo v istem mestu:

SELECT lastname, firstname, tag FROM gonilniki, vozila WHERE drivers.location = vehicles.location

Ta poizvedba daje naslednje rezultate:

ime lastnosti prvega imena -------- --------- --- Baker Roland H122JM Smythe Michael D824HA Smythe Michael P091YF Jacobs Abraham J291QR Jacobs Abraham L990MT

Zdaj razširite ta primer na tretjo tabelo. Predstavljajte si, da želite vključiti samo voznike in vozila, ki so prisotni na lokacijah, ki so odprte ob koncu tedna. V vašo poizvedbo lahko dodate tretjo tabelo z razširitvijo stavka JOIN na naslednji način:

SELECT lastname, firstname, tag, open_weekends OD voznikov, vozil, lokacij WHERE drivers.location = vozila.location AND vehicles.location = locations.location AND locations.open_weekends = 'Da' ime zadnjega imena open_weekends -------- --------- --- ------------- Baker Roland H122JM da Jacobs Abraham J291QR da Jacobs Abraham L990MT da

Ta močna razširitev osnovne izjave SQL JOIN vam omogoča združevanje podatkov na kompleksen način. Poleg kombiniranja tabel z notranjim priklopom lahko to tehniko uporabite tudi za kombiniranje več tabel z uporabo zunanjega priključka. Zunanji pridružitvi vsebujejo rezultate, ki obstajajo v eni tabeli, vendar v ustrezni tabeli nimajo ustreznega ujemanja.