mysql a skladani dotazu
Petr Adámek
petr.adamek na bilysklep.cz
Úterý Listopad 14 00:32:10 CET 2000
> Poradi nekdo, kde mam syntaktickou chybu?
> Pouzivam MySql na Linuxu
>
> SELECT jmeno FROM uzivatele WHERE
> c_uziv = (select c_uziv from pripojeni where session_id like 'neco');
Z hlavy si nejsem jisty, ale nemusi to byt
SELECT jmeno FROM uzivatele WHERE
c_uziv IN (select c_uziv from pripojeni where session_id like 'neco');
?
> pravdepodobne bude chybka nekde v te zavorce, protoze oba dotazy:
> SELECT jmeno FROM uzivatele WHERE c_uziv = 'neco';
> select c_uziv from pripojeni where sess_id like 'neco';
>
> samosastatne pracuji dobre. Nema MySQL nejaky odklon od standartu?
> jak v nem udelat poddotaz.
Ma odklon od standardu - v soucasne dobe stabilni verze MySQL vnorene dotazy
NEUMI. Podpora vnorenych selectu je planovana v nejblizsi dobe.
Reseni:
a) pouzit neco jineho (Postgress)
b) pockat, az to bude umet
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.
Jinak podobnym zpusobem se daji obejit i slozitejsi dotazy bez vnorenych
selectu.
---
Petr Adámek, analytik, NWT Computer s.r.o.
http://www.nwt.cz/
Další informace o konferenci Test