sql >> Databáze >  >> RDS >> Oracle

Připojte se k orákulu s příklady

Tento výukový program Oracle SQL se zaměřuje na vlastní připojení v oracle a poskytuje syntaxi, vysvětlení a příklady

Vlastní spojení v Oracle je spojení tabulky Oracle se sebou samým. Tabulku můžeme použít vícekrát. Každý výskyt by měl mít název aliasu. Databáze Oracle při provádění dotazu spojí tabulku se sebou samým a vytvoří výsledek

General  syntax
select a.col1 ,b.col2  from mytable a,mytable b where <join condition> ;

Některé vlastní připojení v příkladu Oracle

(1) Prezentace hierarchických dat

Máme tabulku zaměstnanců a chceme zadat jméno zaměstnance, jméno manažera pro všechny zaměstnance. Máme také prezidenta, který se nikomu nehlásí ani se nikomu nezobrazuje v dotazu

Níže uvedený dotaz s vlastním spojením s vnějším spojením pro extrahování dat v požadovaném formátu

Zde jsou některé z bodů, které stojí za povšimnutí výše uvedeného dotazu

A. Pro vícenásobný výskyt tabulky EMP

jsme použili jiný alias

b. Použili jsme levé vnější spojení k zobrazení informací o prezidentovi také

(2) Další příklad pro extrakci informací o zaměstnancích, kteří mají stejné datum nástupu

(3) K transponování řádků ve sloupci můžeme použít vlastní spojení taky. Máme tabulku customer_bill, která má několik řádků pro řádky pro různé měsíce v roce a my chceme zobrazit částku faktury za jiný měsíc ve formátu sloupců

Desc customer_bill
--------------
Customer_id Varchar2(10)
bill_amount Number
bill_month Varchar2(10)

dotaz na tabulku

select Customer_id,bill_amount,bill_month
from customer_bill where
customer_id=1111;

Dotaz na transpozici řádků do sloupce

select a.customer_id , b.bill_amount Jan-amount , 
c.bill_amount Feb-amount ,
c.bill_amount Mar-amount from customer_bill a ,customer_bill b,
customer_bill c where a.customer_id=b.customer_id ,
b.customer_id =c.customer_id 
and a.bill_month='JAN' 
and b.bill_month='FEB' and c.bill_month='MAR' 
and a.customer_id=1111;

Podobně můžeme mít více použití vlastního připojení v oracle. Dejte mi prosím vědět, jestli se vám tento příspěvek líbí

Související články
spojení Oracle sql:Co jsou spojení Oracle s příklady (spojení SQL), Různé typy spojení, Vnitřní spojení,Vnější spojení,levé vnější spojení,pravé vnější spojení,křížové spojení s příklady
Příklady syntaxe spojení Oracle :Podívejte se na tento příspěvek, kde najdete příklady syntaxe spojení Oracle na vnitřní spojení, křížové spojení, vnější spojení, levé vnější spojení, pravé vnější spojení
Metoda spojení v Oracle:Tento příspěvek vysvětluje různé metody spojení plánu v Oracle, vnořená smyčka, sort merge join, kartézské spojení, hash join pro lepší pochopení
Připojení Nested Loop v Oracle 11g :Podívejte se na tuto stránku, kde najdete všechny podrobnosti o spojení Nested Loop v Oracle, jak se Nested Loop Join v Oracle 11g liší, jak je vnořené Loop join funguje v oracle
Hash join v Oracle:Podívejte se na tento příspěvek pro podrobný popis Hash join v Oracle, Jak se liší od Nested Loop join v oracle


  1. Jak opravit „Seznam výběru pro příkaz INSERT obsahuje méně položek než seznam vložení“

  2. Porovnání databází MySQL

  3. Funkce SYS_GUID() v Oracle

  4. JSON_INSERT() vs JSON_SET() vs JSON_REPLACE() v SQLite