Autor Zpráva
budik
Profil *
Zdravim,
kdyz bude tento dotaz
select sloupec1,sloupec2 from tabulka where sloupec3=$id

na jakek sloupci by mel byt spravne nastaveny index?
Kajman_
Profil *
3
budik
Profil *
A kdyz by to bylo select slupec1, sloupec2 from tabulka where sloupec3=id and sloupec4=id tak by mel byt na obou hodnotach? Tedy 3 a 4.
Kajman_
Profil *
záleží na okolnostech
pcmanik
Profil
V mysql existuje
EXPLAIN
, nebrani ti teda nic si to vyskusat sam.
joe
Profil
Kajman:
Na kterých? :-) Můžeš dát nějaký jednoduchý příklad (pokud to nějak vysvětlit jde, kde by se to hodilo a kde naopak by byl index zbytečný), prosím? Rád se něco přiučím...

pcmanik:
Nebrání, ale nic taky neříká, že za nějakou dobu může být všechno jinak.
Kajman_
Profil *
joe:
Na kterých?

Hodně na použité databázi a její verzi. Často závisí na počtu řádků a četnosti jednotlivých hodnot ve sloupečcích. Při málořádkových tabulkách má použití indexů větší režii, než procházení tabulky. Při indexu na více sloupcích pak optimální index (pořadí sloupečků v indexu) ovlivňují, nejen ta četnost, ale i další dotazy, které jsou nad tabulky kladené. A aby toho nebylo málo, tak některé indexy přináší více škody (nepřiměřenou zátěž při úpravách tabulky) než užitku.

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:

0