Notranja pridružitev Oracle - Naučite se zgornjih 6 poizvedbenih primerov notranje povezave v Oracle

Kazalo:

Anonim

Uvod v notranji pristop v Oracle

Pridružitvene klavzule se v zbirki podatkov oracle uporabljajo za dostop do podatkov iz več tabel za pridobitev informacij. V bazi podatkov oracle se lahko pridružijo različne vrste združitev.

Notranja pridružitev je ena od vrst pridruževanja v bazi podatkov oracle. Notranji združi se, pridruži se več tabel in vrni tiste vrstice, za katere je pogoj združevanja resničen ali resničen. Notranji spoj je znan tudi kot preprost spoj. Notranji spoj je najpogostejši spoj med vrstami spojev.

Sintaksa notranjega združevanja

SELECT column (, column ) FROM t1
INNER JOIN t2
ON t1.column = t2.column;

Na spodnjem diagramu je prikazana notranja vizualna predstavitev, kot na spodnjem diagramu vrnitev v senci kot rezultat Oracle Inner Join

Oracle Inner Join vrne presekajoče se zapise t1 in t2.

Primeri poizvedb za notranjo združitev

Podrobneje razumemo notranjo povezavo s pomočjo nekaterih primerov poizvedb:

Primer # 1

Primer poizvedbe za Inner Join

SELECT employee.employee _id, employee.employee_name, department. department_name
FROM employee
INNER JOIN department
ON employee.employee _id = department.employee _id;

Zgornji primer Oracle INNER JOIN bo vrnil vse vrstice iz tabele zaposlenega in oddelka, kjer se ujemajo vrednost _id zaposlenega v tabeli zaposlenega in v tabeli oddelka.

Tu obravnavamo shemo hr, ki je vzorčna shema baze podatkov oracle. Shema hr vsebuje tabele DRŽAV, ZAPOSLENIH, ODDELKOV, JOB_HISTORY, DELA, LOKACIJE, REGIJE, v katerih nas zanimajo ali zahtevajo tabele ZAPOSLENIH, ODDELKI in LOKACIJE.

Opis teh tabel je -

Tabela ZAPOSLENI

ODDELKI Tabela

LIKACIJE Tabela

Primer # 2

Primer notranjega pridruževanja dveh tabel

Tu želimo pridobiti podatke iz dveh tabel ZAPOSLENI in ODDELKI. V tej poizvedbi pišemo, da iz tabele zaposlenega prikličemo id zaposlenega in njegovo ime, oddelek pa iz tabele oddelka -

SELECT employees. employee_id, employees. first_name, departments.department_name
FROM employees, departments
WHERE employees. employee_id = departments. department_id;

Izhod

Pred imeni stolpcev s tabelo je stavka Oracle SELECT. Če je stolpec skupen za obe tabeli, mora biti za jasnost ime stolpca predpono z imenom tabele. Tabele, od koder najti podatke, določite v klavzuli iz oddelka z vejico. V stavku WHERE določite pogoj pridruževanja. Razmerje med zaposlenimi in oddelčnimi tabelami je določeno z vrednostmi v skupnem stolpcu zaposleni_id v obeh tabelah mora biti enako, ta odnos pa se imenuje Equi Join. V to povezavo so običajno primarni in tuji ključi.

Primer # 3

Notranji primer dveh tabel z Aliases

Naredimo zgornji primer z uporabo tabelarnih vzdevkov kot -

SELECT e. employee_id, e. first_name,
d. department_name
FROM employees e, departments d
WHERE e. employee_id = d. department_id;

Izhod

Kot v zgornji poizvedbi se tudi vzdevki tabele ustvarijo v oddelku po imenu stolpca in Namesto da v vsak stolpec pred vsakim stolpcem vpišete celotno ime tabele, uporabite tabelo Aliases kot e in d v zgornji poizvedbi.

Primer št. 4

Primer notranjega združevanja za dve tabeli z dodajanjem dodatnih klavzul

Naslednji primer poizvedbe, ko v naš stavek Oracle SELECT dodamo dodatne klavzule, kjer je klavzula za dodajanje združevanja, omejitev vrnjenih vrstic, določitev vrstnega reda razvrščanja in tako naprej. Tu je primer poizvedbe, ki pridobi vse zaposlene, ki delajo v oddelkih za finance, proizvodnjo in gradbeništvo.

SELECT e. employee_id, e. first_name,
d. department_name
FROM employees e, departments d
WHERE e. employee_id = d. department_id
AND d. department_name in ( 'Finance', 'Manufacturing', 'Construction' );

Izhod

Primer št. 5

Primer notranjega združevanja dveh tabel z zaporedjem po klavzuli

Naslednji primer poizvedbe zgornjo poizvedbo napišemo tako, da klavzulo dodamo v vrstnem redu in tako prikažemo podatke zaposlenega, razvrščene po imenu oddelka.

SELECT e. employee_id, e. first_name,
d. department_name
FROM employees e, departments d
WHERE e. employee_id = d. department_id
AND d. department_name in ('Finance', 'Manufacturing', 'Construction')
ORDER BY d. department_name;

Izhod

Primer # 6

Primer notranjega združevanja za združitev več tabel

Včasih, če želimo dobiti informacije, se bomo morda morali pridružiti več kot dvema tabelama. Nato napišemo primer poizvedbe za pridružitev več tabel. Razmislite o primeru, ki ga želimo pridobiti iz zaposlene tabele, ime zaposlenega, ime oddelka iz tabele oddelka in id države, kjer ta delavec dela, v tabeli lokacije.

SELECT e. first_name, e. salary, d. department_name, l. city, l. country_id
FROM employees e, departments d, locations l
WHERE e. employee_id = d. department_id
AND
d. location_id = l. location_id;

Izhod

Če se želite pridružiti štirim ali več tabelam, velja isti koncept, tako da dodate ime tabele v odredbo oracle oracle in uporabite pogoj pridruževanja pri stavku WHERE oracle.

Zaključek

Notranja pridružitev je ena od vrst pridruževanja v bazi podatkov oracle. Notranji spoj se uporablja za združevanje več tabel in vrnitev tistih vrstic, za katere je pogoj združevanja resničen ali resničen. Za ustvarjanje razmerja med tabelama sta primarni in tuji ključ vključena v notranje združevanje.

Priporočeni članki

To je vodnik za Inner Join in Oracle. Tukaj razpravljamo o uvodu v združitev Inner skupaj z nekaj primeri podrobno. Obiščite lahko tudi druge naše predlagane članke, če želite izvedeti več -

  1. Pridružuje se MySQL-u
  2. Oracle poizvedbe
  3. Oracle skladiščenje podatkov
  4. Kaj je Oracle Database