Ik heb een tabel vol met links en in deze tabel staat een categorieid en een paginaid.
Nu vraag ik me 2 zaken af:
1 - Als ik de links van een bepaalde categorie in een bepaalde pagina op haal, hoe kan mijn select er dan het beste uit zien:
SELECT * FROM links WHERE categorieid=1 AND paginaid=2
of
SELECT * FROM links WHERE categorieid=1
Zelf denk ik de eerste? Waarom weet ik niet.
2 - Als ik een index plaats kan ik een multupe index plaatsen dus iets als:
ADD INDEX(paginaid,categorieid)
of ik kan twee indexen plaatsen
ADD INDEX(paginaid)
ADD INDEX(categorieid)
Wat is de beste keuze en als ik voor ADD INDEX(paginaid,categorieid) kies, welke volgorde moet ik dan nemen als we aannemen dat een pagina meerdere categorieen kan bevatten.
Dus ADD INDEX(paginaid,categorieid) of ADD INDEX(categorieid,paginaid) en welke WHERE hoort hier dan bij?
WHERE categorieid=1 AND paginaid=2 of WHERE paginaid=1 AND categorieid=2
Ik weet dat er verschil in zit, maar uit de documentatie staat niet echt wat het beste is.
Als ik op mijn verstand afga, denk ik ADD INDEX(paginaid,categorieid) met WHERE paginaid=1 AND categorieid=2
Omdat je eerst in een kleine index zoekt die snel is en dan de grote, maar mijn gevoel zegt dat het omgekeerde ook heel goed kan?
In de documentatie stond een zinnetje en die kon ik niet goed interpreteren, vandaar de verwarring.
Nu vraag ik me 2 zaken af:
1 - Als ik de links van een bepaalde categorie in een bepaalde pagina op haal, hoe kan mijn select er dan het beste uit zien:
SELECT * FROM links WHERE categorieid=1 AND paginaid=2
of
SELECT * FROM links WHERE categorieid=1
Zelf denk ik de eerste? Waarom weet ik niet.
2 - Als ik een index plaats kan ik een multupe index plaatsen dus iets als:
ADD INDEX(paginaid,categorieid)
of ik kan twee indexen plaatsen
ADD INDEX(paginaid)
ADD INDEX(categorieid)
Wat is de beste keuze en als ik voor ADD INDEX(paginaid,categorieid) kies, welke volgorde moet ik dan nemen als we aannemen dat een pagina meerdere categorieen kan bevatten.
Dus ADD INDEX(paginaid,categorieid) of ADD INDEX(categorieid,paginaid) en welke WHERE hoort hier dan bij?
WHERE categorieid=1 AND paginaid=2 of WHERE paginaid=1 AND categorieid=2
Ik weet dat er verschil in zit, maar uit de documentatie staat niet echt wat het beste is.
Als ik op mijn verstand afga, denk ik ADD INDEX(paginaid,categorieid) met WHERE paginaid=1 AND categorieid=2
Omdat je eerst in een kleine index zoekt die snel is en dan de grote, maar mijn gevoel zegt dat het omgekeerde ook heel goed kan?
In de documentatie stond een zinnetje en die kon ik niet goed interpreteren, vandaar de verwarring.