2009-04-19 6 views

Répondre

23

Essayez d'utiliser la fonction LENGTH:

SELECT * FROM table ORDER BY LENGTH(myField); 

En fonction de ce que vous faites, vous voudrez peut-être utiliser à la place CHAR_LENGTH:

Un caractère multi-octets compte comme un seul caractère. Cela signifie que pour une chaîne contenant cinq caractères à deux octets, longueur() retourne 10, alors CHAR_LENGTH() 5.

Si vous ne savez pas ce que cela signifie, vous voulez probablement LENGTH.

+0

Qu'est-ce que ... fait en MySQL? ;-) – MatBailie

+0

Oui, je l'ai édité pour juste utiliser l'astérisque redouté. :) Je suppose que je préfère mettre en place une requête inefficace que celle qui ne fonctionne pas. –

+0

meh, même la propre documentation de MySQL utilise ellipsis pour signifier le code omis: http://dev.mysql.com/doc/refman/5.0/en/insert-on-duplicate.html. Il est assez courant d'utiliser "..." pour représenter les paramètres variables ou les omissions dans la programmation. – Calvin

Questions connexes