En MariaDB, CHAR_LENGTH() es una función de cadena integrada que devuelve la longitud del argumento de cadena dado, medido en caracteres.
Sintaxis
La sintaxis es así:
CHAR_LENGTH(str)
Donde str es la cadena para la que se devolverá la longitud.
Ejemplo
He aquí un ejemplo básico:
SELECT CHAR_LENGTH('Splash'); Resultado:
+-----------------------+
| CHAR_LENGTH('Splash') |
+-----------------------+
| 6 |
+-----------------------+ Caracteres de varios bytes
El CHAR_LENGTH() La función cuenta cada carácter como un solo carácter, independientemente de cuántos bytes utilice. Por lo tanto, los caracteres que usan dos, tres o incluso cuatro bytes se seguirán contando como un carácter.
Esto contrasta con funciones como LENGTH() , que devuelve el número de bytes (a menos que esté en modo Oracle, en cuyo caso hace lo mismo que CHAR_LENGTH() – devuelve el número de caracteres). También contrasta con funciones como BIT_LENGTH() que devuelve el número de bits en una cadena.
Aquí hay un ejemplo que compara estas funciones:
SELECT
CHAR_LENGTH('©'),
LENGTH('©'),
BIT_LENGTH('©'); Resultado:
+-------------------+--------------+------------------+
| CHAR_LENGTH('©') | LENGTH('©') | BIT_LENGTH('©') |
+-------------------+--------------+------------------+
| 1 | 2 | 16 |
+-------------------+--------------+------------------+
El símbolo de copyright (© ) utiliza dos bytes. CHAR_LENGTH() devuelve 1, porque todavía es un solo carácter. LENGTH() y BIT_LENGTH() por otro lado, devuelve el número de bytes y bits respectivamente.
Este ejemplo se realizó usando el SQL_MODE predeterminado . Como se mencionó, si hubiera estado en modo Oracle, LENGTH() se habría comportado como CHAR_LENGTH() y devolvió 1 .
Argumentos nulos
Pasando null devuelve null :
SELECT CHAR_LENGTH(null); Resultado:
+-------------------+ | CHAR_LENGTH(null) | +-------------------+ | NULL | +-------------------+
Argumento faltante
Llamando a CHAR_LENGTH() sin pasar un argumento da como resultado un error:
SELECT CHAR_LENGTH(); Resultado:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'CHAR_LENGTH'
Consulte también CHARACTER_LENGTH() función, que es un sinónimo de CHAR_LENGTH() .