Autor | Zpráva | ||
---|---|---|---|
Perry Profil |
#1 · Zasláno: 20. 7. 2008, 09:48:32
Mám v databázi přes 14,000 řádek. Potřebuji vybrat jen některé sloupce a některé řádky. Používám tento dotaz:
SELECT `nazev`, `ID` ,`rok` , `majitel`, `dodavatel`, `hodnoceni`, `adresa`, `typ` FROM `zbozi` WHERE `nazev` LIKE 'A%' ORDER BY `nazev` ASC LIMIT 1500,10 problém je v tom, že tento dotaz běží přes 10sekund, což je neúnosné... pokud ovšem místo výčtu sloupců v select klauzuli dám *, dotaz běží 0,5s.... Zdá se mi to dost pochybné a vybírat to * je vraždění paměti... Neví někdo co s tím? |
||
joe Profil |
#2 · Zasláno: 20. 7. 2008, 11:49:51 · Upravil/a: joe
Máš index na sloupci nazev? Nebylo by lepší vytvořit si sloupec třeba nazev_cislo, ve kterem by byl začátek názvu v číslech? Bylo by to rychlejší. Co EXPLAIN?
|
||
Perry Profil |
#3 · Zasláno: 20. 7. 2008, 14:12:14
Díky... vytvoření indexu na sloupcích pomohlo
|
||
Časová prodleva: 16 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0