Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Ako si vyrobiť vonkajšie spojenie v Oracle

Oracle vonkajšie spojenie je spôsob zobrazovania dát bez dodatočného filtrovania záznamov . Ak dve tabuľky obsahujú súvisiace dáta , je pravdepodobné , že jedna z tabuliek nemusí mať žiadne záznamy . To sa môže stať iba v prípade , že nie sú žiadne obmedzenia týkajúce sa tabuliek určujúci , ktoré záznamy musia byť prítomný . Napríklad , v prípade , že spoločnosť má počet zákazníkov , je možné, že v každom okamihu zákazník nemusí byť nariadené žiadne produkty . Reverznej situácia môže byť tiež pravda , v tomto produktov nemusia mať zákazníkov , ktoré im boli zverené . Pokyny dovolená 1

Vyberte dve tabuľky z databázy Oracle , pre ktoré môžu byť záznamy , ktoré existujú v jednom , ale nie nevyhnutne v inej . V tabuľke sa prípadne chýbajúcich záznamov bude známy ako vonkajšie tabuľky v tomto prípade .
2

Vyberte poradie dotazu , pokiaľ ide o rozhodovanie o tom , ktorý z tabuliek uvedených v dotaze ( vľavo alebo vpravo ) bude tvoriť vonkajšie spojenie . Príkladom je to jasnejšie takto :

vyberte c.customerlastname ,

p.productid

z

zákazníka c , productorders p

kde c.customerid = p.customerid ;

Z tohto dotazu rozhodnutie má byť vykonaná , si vyžadujú zoznam všetkých objednávok s ( alebo bez ) zákazníkom alebo opačnej situácii , tj zoznam zákazníci s alebo bez zadaných zákaziek ?
3

Umiestnite ( + ) indikátor pre identifikáciu tabuľku , z ktorej sa vrátil voliteľné riadky , tj majú záznamy , alebo nie . V tomto príklade je tabuľka výrobky môžu alebo nemusia mať príkazy proti nim , a preto to bude ľavej vonkajšie spojenie :

vyberte c.customerlastname ,

p.productid

z

zákazníka c , productorders s

kde c.customerid = p.customerid ( + ) ;

Ak dotaz potreboval nájsť produkty , ktoré nemusia mať zákazníkov proti ne , kde klauzula by :

kde c.customerid ( + ) = p.customerid ;
4

spustite dotaz a vráti výsledok . Príklad ľavej vonkajšie spojenie vráti záznamy podobné nasledovné :

c.customerlastname 123423

Jones

Carr 89654

Bernardstein 66543

Všimnite si , že pre tento ľavej vonkajšie spojenie , jediný zákazník v tomto zozname bez príkazu je " Jones . "

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené