Créer un index sur une colonne MySQL en fonction de la longueur de son contenu?

StackOverflow https://stackoverflow.com/questions/84346

  •  01-07-2019
  •  | 
  •  

Question

Comment créer un index sur une colonne dans MySQL v 5.0 (moteur myisam db) en fonction de la longueur de sa valeur, il s'agit d'un type de données TEXT comportant jusqu'à 7 000 caractères, dois-je ajouter une autre colonne avec la longueur du première colonne?

Était-ce utile?

La solution

Oui, étant donné que MySQL ne prend pas en charge les index basés sur des fonctions (comme ADD INDEX myIndex (LENGTH (texte))) , vous aurez besoin d'une nouvelle colonne int et définissez un déclenche pour le mettre à jour automatiquement après les insertions et les mises à jour.

Autres conseils

Cela me semble être une bonne approche (désolé, je ne connais pas mysql, mais vous pouvez définir un déclencheur pour que la colonne "longueur" soit automatiquement mise à jour lorsque votre colonne principale est mise à jour)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top