En Oracle Database, el BIT_TO_NUM() La función convierte un vector de bits en su número equivalente.
Sintaxis
La sintaxis es así:
BIN_TO_NUM(expr [, expr ]... ) Donde cada expr representa un bit en el vector de bits.
Los argumentos pueden ser cualquier tipo de dato numérico o cualquier tipo de dato no numérico que se pueda convertir implícitamente a NUMBER . Cada expresión debe evaluarse como 0 o 1 .
Ejemplo
Este es un ejemplo:
SELECT BIN_TO_NUM(1)
FROM DUAL; Resultado:
1
En este caso, el valor binario 1 representa el número 1.
Aquí hay otro:
SELECT BIN_TO_NUM(1, 0)
FROM DUAL; Resultado:
2
Ahora hagamos un número mucho más grande:
SELECT BIN_TO_NUM(1, 0, 1, 1, 1, 0)
FROM DUAL; Resultado:
46
Argumentos no válidos
Llamando a BIN_TO_NUM() con argumentos que no se resuelven en un NUMBER dar como resultado un error:
SELECT BIN_TO_NUM('Cat')
FROM DUAL; Resultado:
ORA-01722: invalid number
Valores nulos
Si algún argumento es null , se produce un error de "argumento ilegal":
SELECT BIN_TO_NUM(null)
FROM DUAL; Resultado:
ORA-01760: illegal argument for function
¿Sin argumentos?
Llamando a BIN_TO_NUM() sin argumentos devuelve 0 (cero):
SELECT BIN_TO_NUM()
FROM DUAL; Resultado:
0