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

Aké sú korelované poddotazov v RDBMS a Oracle

? Oracle je komerčný relačný databázový systém . Rovnako ako u iných veľkých RDBMS rokov , používa Structured Query Language pre údržbu databázy , administrácia a programovanie . Jazyk SQL umožňuje vytvárať sofistikované databázové dotazy pre vykazovanie , pridávať a meniť informácie v databáze . Tieto otázky môžu obsahovať korelované poddotaz , v ktorom sú údaje z čiastkového dotazu závisí na hlavnom dotaze . SQL dotazy

dotaze SQL je výrok , ktorý skúma dáta v databáze a používa to , aby vypracovala správu alebo aktualizáciu databázy . Jeden z najjednoduchších otázok je zoznam záznamov v databázovej tabuľke . Vyzerá to , že nasledujúci príkaz SQL :

SELECT * FROM zákazníkov ;

Tento dotaz produkuje zmesný zoznam všetkých informácií v " zákazníkmi " tabuľky , záznam zo záznamu . Pomocou výkonnej klauzuly WHERE , môžete vytvoriť selektívne otázky , ktoré vyhodnocujú dáta a zoznam iba tie záznamy , ktoré zodpovedajú kritériám klauzula je :

SELECT * FROM zákazníkov KDE state = ' CA ' ;

dotaz obsahuje iba zákazníkov z Kalifornie . Klauzuly WHERE pojme veľmi zložité podmienky , vrátane výsledkov korelovaných čiastkových otázok , pre výber iba dáta, ktoré chcete.
Sub - Otázky

sub - dotaz je dotaz , v ktorom klauzuly WHERE sám má svoj vlastný dotaz . Jedná sa o pohodlný spôsob , ako kombinovať informácie z rôznych databázových tabuliek produkovať viac sofistikované výsledky . Nasledujúci dotaz vytvorí zoznam iba tých zákazníkov , ktorí podali objednávky v roku 2011 :

SELECT * FROM zákazníci WHERE customer_code IN ( SELECT customer_code objednávok KDE order_date MEDZI '1 /1 /2011 " a '12 /31 /2011 " ) , celým

Všimnite si , že sa jedná o dotaz v dotaze . SELECT v zátvorkách vytvorí zoznam kódov zákazníka z " objednávky " tabuľky . Vonkajšie dotaz používa kódy zákaznícke dáta vytvorenie zoznamu mien zákazníkov , adresy a ďalšie informácie . Jedná sa o sub - query , ale nie koordinovaný sub - query , keď vonkajšie dotazu závisí na vnútornom jeden , koordinovaný sub - query má tiež vnútorné dotaz , ktorý závisí na vonkajšom jednom
.
Korelované sub - Dotazy

korelačný sub - query , každý dotaz je závislá na druhej . Nasledujúce Oracle SQL vytvorí zoznam kódov zákazníkov , mená a nákupných súčty pre tých zákazníkov , ktorých kúpna sumy nižšie ako priemer za všetkých zákazníkov v stave . Tie potom majú dva vzájomne závislé otázky , ten , ktorý obsahuje zoznam zákazníkov , ale potrebuje priemernú predajnú číslo , podľa ktorého porovnať , a druhý , ktorý vypočíta priemer , ale potrebuje stáť . Všimnite si použitie tabuľky aliasov " C1 " a " C2 . " Alias ​​" c1 " odkazuje na tabuľku zákazníka v vonkajšieho dotazu , a " c2 " je tabuľka zákazník vo vnútornom dotazu .

SELECT customer_code , meno , total_purchases , stáť od zákazníkov , c1 KDE nákupy total_ < ( SELECT AVG ( total_ nákupov ) od zákazníkov , c2 WHERE c1.state = c2.state ) ;
Používanie

Korelované sub - otázky predstavovať užitočnú metódu pre výber informácií z tabuliek , kde sa vyžadujú podmienečné poddotazov pomocou WHERE klauzuly , a kritériom pre vnútorné dotaz prichádza z vonkajšieho jedného . Rovnako ako v príklade sub - query , metóda funguje dobre , keď vnútorné dotazu vytvára celkovú sumu , ako je priemer , súčet , minimum alebo maximum , na ktoré vaše vonkajšie dotaz porovnáva . Môžete použiť vzťah pre spojených sady tabuliek , ako aj jednotlivé tabuľky .

Najnovšie články

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