Operácia INNER JOIN

Kombinuje záznamy z dvoch tabuliek vždy, keď sa vyskytujú zhodné hodnoty v spoločnom poli.

Syntax

FROM tabuľka1 INNER JOIN tabuľka2 ON tabuľka1.pole1compopr tabuľka2.pole2

Operácia INNER JOIN má tieto časti:

Časť

Popis

tabuľka1 , tabuľka2

Názvy tabuliek, ktorých záznamy sa spájajú.

pole1 , pole2

Názvy spojených polí. Ak nie sú číselné, musia mať rovnaký typ údajova obsahovať rovnaký druh údajov, ale nemusia mať rovnaký názov.

compopr

Ľubovoľný operátor relácie porovnávania: „=“, „<“, „>“, „<=“, „>=“ alebo „<>“.


Poznámky

Operáciu INNER JOIN môžete použiť v ľubovoľnej klauzule FROM. Toto je najčastejší typ spojenia. Vnútorné spojenia skombinujú záznamy z dvoch tabuliek vždy, keď sa vyskytnú zhodné hodnoty v poli, ktoré je spoločné pre obidve tabuľky.

Príkaz INNER JOIN môžete použiť s tabuľkami Oddelenia a Zamestnanci na výber všetkých zamestnancov v každom oddelení. Ak chcete vybrať všetky oddelenia (aj vtedy, ak v niektorých nie sú priradení žiadni zamestnanci), alebo všetkých zamestnancov (aj vtedy, ak nie sú priradení k žiadnemu oddeleniu), môžete vytvorenie vonkajšie spojenie použiť operáciu LEFT JOIN alebo RIGHT JOIN.

Ak sa budete pokúšať spojiť polia obsahujúce údaje Memo alebo objektu OLE, vyskytne sa chyba.

Spojiť môžete ľubovoľné dve numerické polia, ktoré sú podobného typu. Môžete napríklad spojiť polia AutoNumber a Long, pretože sú to podobné typy. Nie je však možné spojiť polia typu Single a Double.

Nasledujúci príklad ukazuje, ako je možné spojiť tabuľky Kategórie a Produkty podľa poľa IDKategórie:

SELECT CategoryName, ProductName
FROM Categories INNER JOIN Products
ON Categories.CategoryID = Products.CategoryID;

V predchádzajúcom príklade je IDKategórie spojené pole, no nie je zahrnuté vo výstupe dotazu, pretože sa nenachádza v príkaze SELECT. Ak chcete zahrnúť spojené pole, zahrňte názov poľa do príkazu SELECT – v tomto prípade Categories.CategoryID.

V príkaze JOIN môžete tiež prepojiť niekoľko klauzúl ON pomocou nasledujúcej syntaxe:

SELECT polia
FROM tabuľka1 INNER JOIN tabuľka2
ON tabuľka1.pole1compoprtabuľka2.pole1 AND
ON tabuľka1.pole2compoprtabuľka2.pole2) OR
ON tabuľka1.pole3compoprtabuľka2.pole3)];

Príkazy JOIN môžete tiež vnoriť pomocou nasledujúcej syntaxe:

SELECT polia
FROM tabuľka1 INNER JOIN
(tabuľka2 INNER JOIN [( ]tabuľka3
[INNER JOIN [( ]tabuľkax [INNER JOIN ...)]
ON tabuľka3.pole3compoprtabuľkax.polex)]
ON tabuľka2.pole2compoprtabuľka3.pole3)
ON tabuľka1.pole1compoprtabuľka2.pole2;

LEFT JOIN alebo RIGHT JOIN môžu byť vnorené do INNER JOIN, ale INNER JOIN nie je možné vnoriť do LEFT JOIN alebo RIGHT JOIN.



Rozšírte svoje zručnosti práce s balíkom Office
Preskúmať školenie
Buďte medzi prvými, ktorí získajú nové funkcie
Pridajte sa k insiderom pre Office

Boli tieto informácie užitočné?

Ďakujeme za vaše pripomienky!

Ďakujeme vám za pripomienky. Pravdepodobne vám pomôže, ak vás spojíme s pracovníkom podpory pre Office.

×