Contar caracteres de un campo en MySQL

Por: Mr. FotoPex Leave a reply »

 

 

En ocasiones necesitamos contar los caracteres de un campo vamos a verlo de una forma muy simple:

LENGTH(cadena)
Recibe una cadena y cuenta y devuelve el número de caracteres.

CHARACTER_LENGTH(cadena)
Recibe también una cadena y devuelve el número de caracteres contados.

CHAR_LENGTH(cadena)
Es un sinónimo de CHARACTER_LENGTH. Aunque no lo tienen todas las versiones de MySQL.

La diferencia entre LENGTH y CHARACTER_LENGTH es que en CHARACTER_LENGTH un carácter “multibyte” cuenta como un solo carácter. En LENGTH cuenta el número de bytes de la cadena. Así que en el caso de tener una cadena con 5 caracteres que ocupan 2 bytes cada uno, LENGTH devolvería 10 y CHARACTER_LENGTH sólo 5.

Y la forma de utilizar la instrucción es :

SELECT character_length( ‘campo’ ), campo FROM tabla

Esto nos devolvería un conjunto de registros con el número de caracteres de cada registro y luego otra columna con contenido.

También podemos usarlo en las condiciones:

SELECT campo FROM tabla where CHARACTER_LENGTH(campo)=6

Y en la ordenación:

SELECT CHARACTER_LENGTH(campo) as ‘numcaracteres’, campo FROM tabla ORDER BY CHARACTER_LENGTH(campo)

¿Fácil no ?

Advertisement

Leave a Reply

You must be logged in to post a comment.