mysql a skladani dotazu

Jan Serak sherry na pikebo.cz
Úterý Listopad 14 07:49:54 CET 2000


Petr Adámek wrote:
[...]
> c) obejit se bez vnorenych dotazu, napr:
> 
> SELECT jmeno FROM uzivatele,pripojeni  WHERE uzivatele.c_uziv =
> pripojeni.c_uziv  AND session_id like 'neco';
> 
> Zrovna vtomto pripade bych vnoreny select nepouzil ani kdyby ho MySQL umela.

V relacnim kalkulu lze dokazat, ze jakykoli dotaz se sub-dotazem v selekci
(klauzule WHERE) lze transformovat do joinu, ktery je ekvivalentni (ve smyslu
deklarace pozadovaneho vysledku).

Pokud bude podpora sub-dotazu v MySQL udelana dobre, klidne bude mozne bez
obav dotazy tohoto typu pouzivat, nebot parser a optimizer automaticky
tuto transformaci provedou. Vyhodou sub-dotazu je, ze jsou vetsinou
citelnejsi nez joiny.

					Jan Serak


Další informace o konferenci Databases