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

Cómo funciona CONV() en MariaDB

En MariaDB, CONV() es una función numérica incorporada que convierte números entre diferentes bases numéricas. Por ejemplo, puede usarlo para convertir un número de base 10 a base 16.

Devuelve una representación de cadena del número convertido.

Sintaxis

La sintaxis es así:

CONV(N,from_base,to_base)

Donde N es el número a convertir, from_base es la base para convertir y to_base es la base para convertir.

La base mínima es 2 y la base máxima es 36.

Ejemplo

He aquí un ejemplo:

SELECT CONV(12, 10, 16);

Resultado:

+------------------+
| CONV(12, 10, 16) |
+------------------+
| C                |
+------------------+

El resultado es C porque ese es el valor hexadecimal (base 16) para 12 .

Así que la cuenta es así:0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C.

Aquí hay otro:

SELECT CONV(1234567, 10, 16);

Resultado:

+-----------------------+
| CONV(1234567, 10, 16) |
+-----------------------+
| 12D687                |
+-----------------------+

Base Negativa

Si el to_base el argumento es un número negativo, N se considera como un número con signo. De lo contrario, se trata como si no estuviera firmado.

SELECT CONV(-12, 10, -16);

Resultado:

+--------------------+
| CONV(-12, 10, -16) |
+--------------------+
| -C                 |
+--------------------+

Base fuera de rango

La base mínima es 2 y la base máxima es 36. Si el segundo o tercer argumento no está dentro de este rango, null es devuelto.

Ejemplo

SELECT CONV(12, 10, 42);

Resultado:

+------------------+
| CONV(12, 10, 42) |
+------------------+
| NULL             |
+------------------+

Argumentos de cadena

El número se interpreta como un número entero, pero se puede especificar como un número entero o una cadena.

SELECT CONV('C', 16, 2);

Resultado:

+------------------+
| CONV('C', 16, 2) |
+------------------+
| 1100             |
+------------------+

Argumentos nulos

CONV() devuelve null si alguno de los argumentos es null :

SELECT CONV(null, 10, 8);

Resultado:

+-------------------+
| CONV(null, 10, 8) |
+-------------------+
| NULL              |
+-------------------+

Argumentos faltantes

Llamando a CONV() con el número incorrecto de argumentos, o sin ningún argumento da como resultado un error:

SELECT CONV();

Resultado:

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

Y:

SELECT CONV(10, 2);

Resultado:

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