Pour obtenir tous les mots de plus de 7 caractères, tu peux découper la chaine en mots, sélectionnner les mots de plus de 7 caractères, puis concatainer les mots sélectionnés.
Un mot d'une chaine peut être séparé avec la fonction SUBSTRING_INDEX.
SELECT SUBSTRING_INDEX( SUBSTRING_INDEX( nom_du_champ, ' ', N ) , ' ' , -1 ) AS word
Une fois un mot sélectionné, sa longueur est déterminable avec la fonction LENGTH.
1 2 3
| SELECT IF( LENGTH(SUBSTRING_INDEX( SUBSTRING_INDEX( nom_du_champ, ' ', N ) , ' ' , -1 ))>7,
SUBSTRING_INDEX( SUBSTRING_INDEX( nom_du_champ, ' ', N ) , ' ' , -1 ),
NULL) as word |
Cette requête retourne le Nième mot de la chaine ou NULL si le mot fait moins de 7 caractères.
Tu peux ensuite sélectionner les mots de plus de 7 caractères en concatainant les résultats de la requête précédente, plusieurs fois utilisée, en remplaçant N par 1, 2, 3, ....
Partager