Aller au contenu

compter le nombre de lettres d'un mots


liou13

Sujets conseillés

Bonjour,

dans une requete, je ne voudrais afficher que les résultats ou le code postal ne comporte que 5 caractères (car ils ne sont pas tous bien en forme).

Alors j'ai cette requête : "SELECT * FROM table"

J'ai vu que l'on pouvait utilisé LEN mais ça ne fonctionne pas.

J'avais essayé ça :"SELECT * FROM table WHERE LEN(champ_cp) = 5"

Mais mysql me retourne que la fonction LEN n'existe pas.

Voila merci d'avance pour le coup de pouce.

Lien vers le commentaire
Partager sur d’autres sites

Ok ça fonctionne Merci bien Portekoi.

Sinon Patrick je pense que tu as raison sur le fais que LEN n'existe pas en sql car mysql ne trouvais pas la fonction. J'ai du me planter quelque part.

liou13

Lien vers le commentaire
Partager sur d’autres sites

Tiens je ne connaissais pas CHAR_LENGTH(), j'avais pour habitude d'utiliser LENGTH() ; j'ai donc fait un tour dans la doc et il y est expliqué que LENGTH() ne gère pas "correctement" les caractères "multi octets"... me v'la bien, ça va me faire pas mal de code à revoir :'(

Enfin du coup merci, je vais pouvoir corriger cela.

En passant, la doc en question : http://dev.mysql.com/doc/refman/5.0/en/string-functions.html

Lien vers le commentaire
Partager sur d’autres sites

Effectivement,pour la longueur d'une chaine, LENGHT compte en octets, alors que CHAR_LENGHT compte en caractères. Cela peut donner des résultats différents et donc des surprises dans un script !

Bon courage Kioob pour tes corrections de codes et heureux que le Hub t'ai apporté quelque chose d'utile.

++

Patrick

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...