J'ai une table de commentaires comportant + d'1 million de lignes, construite de la sorte (simplifiée)
id
id_membre
texte
section
id_fiche
section est actuellement un champs enum ('series_tv','films','livres','videos'....) comportant 25 valeurs différentes.
Je me demandais ce qui était le mieux pour mon champs section au niveau rapidité de requêtage :
- garder le enum
- le changer en un tiny int 1 unsigned (qui comportera des valeurs allant de 1 a 25 voir un peu plus par la suite mais 35maxi). series_tv => 1, films=>2, livres=>3
Les 2 principaux types de requête sur cette table :
SELECT * FROM commentaires WHERE section = 'films' AND id_fiche = 99 LIMIT 0,25 (sort les commentaires sur une fiche). Utilise un index (section,id_fiche)
SELECT * FROM commentaires WHERE section = 'films' LIMIT 0,25 (sort les 25 derniers commentaires de la section films). J'ai tenté d'indexer mon champ enum mais ça change pas grand chose, de souvenir un enum est déjà indéxé.Merci.