SQL kérdések - Szoftverfejlesztés fórum

üzenetek

hozzászólások


tzs84
(tag)

szerintem sem lesz gyorsabb
ha a sztring alapján akarsz tulajdonság szerint szűrni, akkor végig kell olvasnia az egész táblában az összes stringet, azokra illeszteni
ha indexeled a stringet, akkor ahhoz hosszú index kell (az egész hosszára!), ami sok helyet foglal, és lassítja a beszúrásokat, módosításokat
ha a külön táblát indexeled tulajdonságid szerint is, akkor csak azokat a sorokat kell olvasnia, amik megfelelnek, és eleve két int-et kell csak összehasonlítani, még joinnal együtt is gyorsabb lesz szerintem, és kevesebb helyet fog foglalni, gyorsabb lesz a beszúrás/módosítás is

és az hogy végig kell túrnia sztringeket pont akkor lesz rossz, amikor már nagy lesz a tábla, mert ahhoz hogy lekérdezz 50-et sokkal többet kell majd olvasnia, mert egyszerűen nem tudja majd merre keresse őket, míg az indexelt tulajdonságid-nél egyből tudni fogja, és 50et összejoinolni nem lesz nagyobb költség mint mondjuk 500 sztringet végigolvasni a lemezről mire megtalál annyit amennyi a limitben van

szerk:
ha ennyire aggódtok a join miatt akkor használjatok innodb táblákat, azoknál elvileg gyorsabb az elsődleges kulcs szerinti joinolás

[Szerkesztve]

üzenetek