Autor | Zpráva | ||
---|---|---|---|
abraham Profil * |
#1 · Zasláno: 18. 12. 2013, 14:01:18
Pořád mě vrtá hlavou, jak že to přesně fungují ty indexy a v databázích. Chápu, že to pomáhá při vyhledávání, ale vůbec nevím, jak to vlastně funguje. Celá ta myšlenka je tedy založena na tom, že si jen v tabulce určím nějaký index a když pak něco z databáze vybírám, tak on ten engine, který mám na té tabulce nastavený sám podle toho indexu ta data nějak řadí a vyhledává? Znamená to, že já ten index jen definuji a databázový engin si to ošéfuje sám?
|
||
laijk Profil |
Neviem či som správne pochopil otázke, ale indexy sa (asi fungujú iba v engine innoDB) používajú na priraďovanie cudzích kľúčov - načo to je som sa včera opýtal tu :)
|
||
ninja Profil |
#3 · Zasláno: 18. 12. 2013, 14:35:40
Zjednodušeně index (pokud nebudu brát v potaz primary, unique a foring) znamená, že si db nad daným sloupcem vytvoří ještě další pomocná data, podle který se mu lépe filtru a třídí. Tudíž SELECT dotazy přes indexovaný sloupec (sloupce) budou rychlejší, na druhou stranu to znamená větší režii při INSERT a UPDATE, protože si DB musí zpracovat a ukládat extra data.
|
||
Taps Profil |
#4 · Zasláno: 18. 12. 2013, 14:36:48
laijk, abraham:
http://php.vrana.cz/ukazka-pouziti-indexu.php |
||
Kajman Profil |
#5 · Zasláno: 18. 12. 2013, 19:32:54
abraham:
„Chápu, že to pomáhá při vyhledávání, ale vůbec nevím, jak to vlastně funguje.“ Indexů je více druhů, ale jako základ pochopení, jak se hledá číselné id by mohlo stačit. http://cs.wikipedia.org/wiki/B-strom#Operace_vyhled.C3.A1v.C3.A1n.C3.AD O vyhledávání (spíše textovém) je i zajímavý seriál http://www.youtube.com/playlist?list=PLF525EC14D523AC1B |
||
jenikkozak Profil |
#6 · Zasláno: 18. 12. 2013, 20:51:33
laijk:
„Neviem či som správne pochopil otázke, ale indexy sa (asi fungujú iba v engine innoDB) používajú na priraďovanie cudzích kľúčov - načo to je som sa včera opýtal tu :)“ Spojování tabulek s indexy moc nesouvisí. K takovému základnímu seznámení s indexy může pomoci stránka Index (databáze) na Wikipedii. |
||
Časová prodleva: 10 let
|
0