Autor Zpráva
Kcko
Profil
EXPLAIN SELECT id_zapasu FROM `vysledky` 
WHERE datum BETWEEN '2008-01-01' AND '2008-12-31 23:59:59'


V databazi je 32 000 zaznamu jiz od roku 2005 , za tento rok jich pribylo asi 7000

Vysledek explainu je


id 	select_type 	table 	type 	possible_keys 	key 	key_len 	ref 	rows 	Extra
1 	SIMPLE 	vysledky 	ALL 	datum 	NULL 	NULL 	NULL 	32341 	Using where


Index na sloupci datum mam, uz skutecne nevim jak to zoptimalizovat aby vybral skutecne jen onech 7000 a neprojizdel porad celou tabulku dokola.
Kcko
Profil
Odpovim si sam ... :)

Badal , zkousel, lateril, nadaval, sproste nadaval, nakonec i guuglil => http://dev.mysql.com/doc/refman/5.1/en/index-hints.html

Staci pouzit FORCE INDEX (datum) pri dotazu a uz se to chova jak ma ...

Ale mohlo by se to chovat i defaultne , navic kdyz je to jedinej index.

Necham to otevreno, kdyby k tomu jeste nekdo neco mel

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: