Autor Zpráva
23k
Profil
Prave jsem si nainstaloval MYSQL 4.1 protoze prestupuji na jiny webhosting kde tato verze konecne JE!

Samozrejme jsem se zacal koukat po subselectech , ktere jsem drive nepouzival ani nemohl. Jen bych rad vedel zda-li nekdo vi jak je to s narocnosti. Uvedu mensi priklad


Mam tabulku ZAPASY

id_zapasu | kolo |.....

a dejmetomu nekde zobrazuji souhr nejnovejsich vysledku podle kola a potrebuji na to znas nejvyssi odehrane kolo.
Doposud jsem to delal takto

$nejvyssi_kolo=mysql_fetch_Arrray(mysql_query("select max(kolo) from ZAPASY");
$ukaz=mysql_query("select * from ZAPASY where kolo=$nejvyssi_kolo[0]");
.
.
standarni vypis ...


a nyni to pujde rovnou v 1 selectu

select * from ZAPASY where kolo = (select max(kolo) from ZAPASY);


Co je z hlediska narocnosti lepsi? Me stale prijde ze ten prvni zpusob
kaifman
Profil
urcite ten druhej bude rychlejsi protoze se dotaz zasila jenom jednou a vysledek se vraci taky jenom jednou,
zkus to zmerit, taky by me to zajimalo, ale logicky by to melo byt rychlejsi jako subselect ale urcite ne o nejakej ranec
23k
Profil
no kdybych vedel jak to zmerit tak to udelam :)
kaifman
Profil
no bud si stahni nejakou php knihovnu ktera toto dela (napr v PEARu) a nebo si uloz microtime pred tema dotazama a microtime za nima a odecti
23k
Profil
no uvidim, ted si du cist do postele noviny, uvidime co jeste prinese dnesni vecer ;)
Toto téma je uzamčeno. Odpověď nelze zaslat.

0