Uvod u unutarnje pridruživanje Oracleu
Klauzule za pridruživanje koriste se u bazi podataka oracle za pristup podacima iz više tablica radi dobivanja informacija. Postoje različite vrste pridruživanja u bazi podataka oracle.
Unutarnje pridruživanje jedna je od vrsta pridruživanja u bazi podataka oracle. Unutarnji spoj, pridružite se više tablica i vratite one redove za koje je uvjet pridruživanja ili su istiniti. Unutarnje spajanje je poznato i kao jednostavno spajanje. Unutarnji spoj je najčešći spoj među vrstama spajanja.
Sintaksa unutarnjeg spajanja
SELECT column (, column ) FROM t1
INNER JOIN t2
ON t1.column = t2.column;
Unutarnji vizualni prikaz predstavljen je na donjem dijagramu, kao što je na donjem dijagramu povratak osjenčanih područja kao rezultat Oracle unutarnjeg spajanja
Oracle Inner Join vraća rezidualne zapise t1 i t2 kao rezultat.
Primjeri upita za unutarnju pridruživanje
Razjasnimo detaljno unutarnje spajanje uz pomoć nekih primjera upita:
Primjer 1
Primjer upita 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;
U ovom gornjem primjeru Oracle INNER JOIN vratit će se svi redovi iz tablice zaposlenika i tablice odjela gdje se podudaraju vrijednosti _ zaposlenika i u tablici zaposlenika i u tablici odjela.
Ovdje razmotrimo hr shemu koja je uzorak shema baza podataka oracle. Shema hr sadrži tabele ZEMLJE, ZAPOSLENE, ODJELE, JOB_HISTORY, POSAO, LOKACIJE, REGIJE, u kojima smo zainteresirani ili tražimo tablice ZAPOSLENIH, ODJELA i LOKACIJE.
Opis ovih tablica je -
Stolni ZAPOSLENI
ODJELA tablice
LOKACIJE tablice
Primjer 2
Primjer unutarnjeg pridruživanja za dvije tablice
Ovdje bismo željeli preuzeti podatke iz dvije tablice ZAPOSLENI i ODJELI. Ovde pišemo upit kako bismo iz tablice zaposlenika pronašli ID zaposlenika i ime zaposlenika, a odjel odjela iz tablice odjela -
SELECT employees. employee_id, employees. first_name, departments.department_name
FROM employees, departments
WHERE employees. employee_id = departments. department_id;
Izlaz
Nazivima stupaca s tablicom prethodi klauzula Oracle SELECT. Ako je stupac zajednički za obje tablice, tada se radi jasnoće mora naziv stupca postaviti s nazivom tablice. Tablice iz kojih se podaci preuzimaju navedite u odredbi iz klase odvojene zarezom. U odredbi WHERE navedite uvjet pridruživanja. Odnos između zaposlenika i tablica odjela određen je vrijednostima u zajedničkom stupcu zaposlenik_id, a obje tablice moraju biti jednake i taj se odnos naziva Equi Join. U ovom su odnosu obično primarni i strani ključevi.
Primjer 3
Primjer unutarnjeg pridruživanja dviju tablica s alijansama
Ponovno ćemo napisati gornji primjer koristeći Tablična alijanse kao -
SELECT e. employee_id, e. first_name,
d. department_name
FROM employees e, departments d
WHERE e. employee_id = d. department_id;
Izlaz
Kao i u gornjem upitu, pseudonjeri tablice kreiraju se u klauzuli iz nakon imena stupca, a umjesto da se napiše puno ime tablice u klauzuli za odabir prije svakog stupca, koristite tablicu Aliases kao e i d u gornjem upitu.
Primjer 4
Primjer unutarnjeg pridruživanja za dvije tablice s dodavanjem dodatnih rečenica
Sljedeći primjer upita gdje smo dodali dodatne rečenice u našu Oracle SELECT izjavu gdje je klauzula za dodavanje združivanja, ograničavanje vraćenih redaka, definiranje redoslijeda sortiranja i tako dalje. Evo primjera upita koji dohvaća sve zaposlenike koji rade u odjelima za financije, proizvodnju i građevinarstvo.
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' );
Izlaz
Primjer 5
Primjer unutarnjeg pridruživanja dviju tablica s redoslijedom po klauzuli
Sljedeći primjer upita, gornji upit prepisujemo dodavanjem naredbe u klauzulu, prikazujući tako podatke zaposlenika poredane po nazivu odjela.
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;
Izlaz
Primjer 6
Primjer unutarnje pridruživanja za pridruživanje više tablica
Ponekad za dobivanje informacija možda ćemo trebati pridružiti više od dvije tablice. Zatim pišemo primjer upita za pridruživanje više tablica. Razmotrimo primjer kojim želimo dohvatiti ime zaposlenika iz tablice zaposlenika, ime odjela iz tablice odjela i ID države lokacije u kojoj ovaj zaposlenik radi u 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;
Izlaz
Za pridruživanje četiri ili više tablica primjenjuje se isti koncept dodavanjem naziva tablice u ODREDBENU klauzulu i primjenjuje se uvjet pridruživanja na mjestu WHERE oracle.
Zaključak
Unutarnja pridruživanje jedna je od vrsta pridruživanja u bazi podataka oracle. Unutarnji spoj koji se koristi za spajanje više tablica i vraćanje onih redaka za koje je uvjet pridruživanja ili su istiniti. Često su primarni i strani ključ uključeni u unutarnje spajanje kako bi stvorili odnos između tablica.
Preporučeni članci
Ovo je vodič za Inner Join in Oracle. Ovdje ćemo raspravljati o uvodu u Unutrašnje pridruživanje, uz nekoliko detalja. Možete i proći kroz naše druge predložene članke da biste saznali više -
- Pridružuje se MySQL-u
- Oracle upiti
- Oracle skladištenje podataka
- Što je baza podataka Oracle