On 10/10/06, "Ing. Radek Žuja" <[EMAIL PROTECTED]> wrote:
Přiznám se že nepracuji s Oracle ale se Sybase.
Jsem si když jsem odpovídal poznámky o platformě nevšiml
Myslel jsem že optimizátory by v tomto případě měli pracovat
podobně(tedy pokud můžu scanovat index, který je menší než tabulka,
udělám to).

No ale pri sum nepouzije oracle index vzdy. Kdyz je index (a suma) nad
sloupcem ktery je not null tak index pouzije, kdyz je na sloupcem
ktery null muze obsahovat tak vzdy udela full table scan bez ohledu na
to jestli tam ma index, dokonce neakceptuje ani hint kdy mu clovek
predhodi aby ten index pouzil (Oracle 9.2.0.7).
Jinak jestli je to tak nutny optimalizovat tak opravdu pomuze leda
partitioning podle toho sloupce a pak aby ten dotaz byl
paralelizovanej, ale delat tohle kvuli jednomu dotrazu neni rozumne
protoze vam to muze mit dopad (negativni) treba na vsechny ostatni
dotazy.
Tomu reseni s triggerem a agregacni tabulkou se nema cenu vyhybat to
je naprosto ciste reseni rychle na vytvoreni, jedina slabina je pri
velkem paralelnim meneni dotcenych zaznamu to vam to muze snizit
odezvu.

Ale to jsme se jiz dostali hodne daleko od javy.


--
Stanislav Ošmera
Work: +44 (0)2075 980 364
Cell: +44 (0)7914 635 412
private email: [EMAIL PROTECTED]
work email: [EMAIL PROTECTED]
Skype: sosmera   ICQ:149634231

Odpovedet emailem