sql >> Base de Datos >  >> RDS >> MariaDB

Cómo funciona CHR() en MariaDB

En MariaDB, CHR() es una función de cadena integrada que devuelve un carácter basado en los valores de código proporcionados como argumento.

El CHR() la función es similar a CHAR() función, excepto que CHR() solo acepta un único argumento. El CHAR() La función, por otro lado, acepta uno o más argumentos. Además, CHAR() acepta un USING opcional cláusula, mientras que CHR() no.

El CHR() La función se introdujo en MariaDB 10.3.1 para brindar compatibilidad con Oracle.

Sintaxis

La sintaxis es así:

CHR(N)

Donde N es el valor que CHR() se interpreta como un número entero. CHR() luego devuelve un VARCHAR(1) cadena que consiste en el carácter dado por los valores de código de ese entero.

El conjunto de caracteres y la intercalación de la cadena se establecen de acuerdo con los valores de la character_set_database y collation_database variables del sistema.

Ejemplo

Aquí hay un ejemplo simple para demostrarlo:

SELECT CHR(65);

Resultado:

+---------+
| CHR(65) |
+---------+
| A       |
+---------+

Aquí proporcioné un número entero y CHR() devolvió el carácter correspondiente. En este caso, el entero 65 se asigna a la letra mayúscula A .

Sensibilidad de mayúsculas y minúsculas

Aquí hay un ejemplo que distingue una letra mayúscula de su contraparte minúscula:

SELECT 
    CHR(72),
    CHR(104);

Resultado:

+---------+----------+
| CHR(72) | CHR(104) |
+---------+----------+
| H       | h        |
+---------+----------+

Valores nulos

Un argumento de null devuelve NULL .

Ejemplo:

SELECT CHR(null);

Resultado:

+-----------+
| CHR(null) |
+-----------+
| NULL      |
+-----------+

Pasar múltiples argumentos

Pasar más de un argumento da como resultado un error:

SELECT CHR(65, 77);

Resultado:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'CHR'

Si necesita pasar múltiples argumentos, use CHAR() en su lugar.

Ejemplo:

SELECT CHAR(65, 77);

Resultado:

+--------------+
| CHAR(65, 77) |
+--------------+
| AM           |
+--------------+