Datu iegūšana no vairākām tabulām, izmantojot SQL iekšējās apvienības

Iekšējā pievieno informāciju, kas parādās divās vai vairākās datu bāzēs

Iekšējie savienojumi ir visbiežāk izmantoti SQL savienotāji. Viņi atgriež tikai informāciju, kas pastāv divās vai vairākās datu bāzu tabulās. Pievienošanās nosacījums nosaka, kuri ieraksti tiek sapāroti kopā un ir norādīti WHERE klauzulā. Piemēram, ja jums nepieciešams vadītāja / transportlīdzekļa atbilstības saraksts, kurā gan transportlīdzeklis, gan vadītājs atrodas tajā pašā pilsētā, šis SQL vaicājums izpilda šo uzdevumu:

IZVĒLIETIES uzvārdu, vārdu, tagu no draiveriem, transportlīdzekļiem, kur vadītājiem. Vieta = transportlīdzekļa nosaukums

Šeit ir rezultāti:

uzvārds pirmāsvārda tags
----------- ------------ ----
Baker Roland H122JM
Smythe Michael D824HA
Smythe Michael P091YF
Jacobs Abraham J291QR
Jacobs Abraham L990MT

Ņemiet vērā, ka rezultāti ir tieši tie, kas tika meklēti. Ir iespējams precizēt vaicājumu, norādot papildu kritērijus WHERE klauzulā. Pieņemsim, ka sākotnējais vaicājums atbilst draiveriem transportlīdzekļiem, kuriem tie nav pilnvaroti vadīt (kravas automašīnu vadītājiem uz automašīnām un otrādi). Lai atrisinātu šo problēmu, varat izmantot šādu vaicājumu:

SELECT Lastname, firstname, tag, vehicles.class FROM drivers, vehicles WHERE drivers.location = vehicle.location UN drivers.class = vehicles.class

Šajā piemērā precizē klases atribūta avota tabulu SELECT klauzulā, jo tā ir neskaidra - tā parādās abās tabulās. Kods parasti norāda, kura tabulas sleja ir jāiekļauj vaicājuma rezultātos. Šajā gadījumā tas nenozīmē atšķirību, jo kolonnas ir identiskas, un tās apvieno, izmantojot ekvivalentu. Tomēr, ja kolonnās būtu dažādi dati, šī atšķirība būtu kritiska. Šeit ir minētā vaicājuma rezultāti:

Uzvārds pirmās vārda atzīmes klase
---------- ------------ ---- ------
Baker Roland H122JM automašīna
Smythe Michael D824HA Truck
Jacobs Abraham J291QR automašīna

Trūkstošās rindas pārī Michael Smythe uz automašīnu un Abraham Jacobs uz kravas automašīnu, transportlīdzekļiem, kuriem viņiem nebija atļauts vadīt.

Jūs varat arī izmantot iekšējo savienojumu, lai apvienotu datus no trim vai vairākām tabulām .