Hirdetés

Keresés

Új hozzászólás Aktív témák

  • Taci

    addikt

    válasz nyunyu #5035 üzenetére

    Köszönöm a tippet.

    Ezt a leírást találtam róla: [link]

    Note: Updating a table with indexes takes more time than updating a table without (because the indexes also need an update). So, only create indexes on columns that will be frequently searched against.

    Van ilyen lekérdezésem is:
    SELECT * FROM table
    WHERE channel_id 
    IN ('id1','id2','id3','id4') 
    AND 
    (category LIKE '%category1%' 
    OR category LIKE '%category2%'
    OR category LIKE '%category3%' 
    OR category LIKE '%category4%' 
    OR category LIKE '%category5%' 
    OR category LIKE '%category6%') 
    AND 
    (category NOT LIKE '%category7%' 
    AND category NOT LIKE '%category8%' 
    AND category NOT LIKE '%category9%')
    ORDER BY date DESC LIMIT 4

    Ez alapján akkor ezeket a mezőket (channel_id, category) is indexelni kellene, mert végülis ugyanolyan gyakran vannak használva?
    Látok a link alatt olyat is, hogy lehet indexet mezők kombinációjára is beállítani. A fenti példám alapján hogy lenne jobb? Index külön a mezőkre? Index ezek kombinációjára? Vagy is-is?

    És ezt a CREATE INDEX-et csak egyszer kell mezőnként futtatni, és onnan "rendben van"? Azért kérdezem, mert próbálok mindent automatizálni, hogy ne kelljen figyelni rá, ha nem muszáj, és ha ez is olyan, amit többször kell meghívni, akkor erre is figyelnem kell.

    Bocsánat a sok kérdésért és értetlenkedésért, csak erről most hallok először, és fontosnak tűnik, nem szeretnék hibázni vele.

    Köszönöm.

Új hozzászólás Aktív témák