В MariaDB, CONV()
е вградена числова функция, която преобразува числа между различни числови бази. Например, можете да го използвате, за да преобразувате число от основа 10 в основа 16.
Връща низово представяне на преобразуваното число.
Синтаксис
Синтаксисът е така:
CONV(N,from_base,to_base)
Където N
е числото за преобразуване, from_base
е базата за конвертиране и to_base
е основата за преобразуване.
Минималната база е 2, а максималната е 36.
Пример
Ето един пример:
SELECT CONV(12, 10, 16);
Резултат:
+-----------------+| CONV(12, 10, 16) |+-----------------+| C |++------------------+
Резултатът е C
защото това е шестнадесетичната (база 16) стойност за 12
.
Така броенето става така:0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C.
Ето още един:
SELECT CONV(1234567, 10, 16);
Резултат:
<пред>+-----------------------+| CONV(1234567, 10, 16) |+-----------------------+| 12D687 |+-----------------------+Отрицателна основа
Ако to_base
аргументът е отрицателно число, N
се счита за подписано число. В противен случай се третира като неподписан.
SELECT CONV(-12, 10, -16);
Резултат:
+-------------------+| CONV(-12, 10, -16) |+-------------------+| -C |+-------------------+
Извън обхват на базата
Минималната база е 2, а максималната е 36. Ако вторият или третият аргумент не е в този диапазон, null
се връща.
Пример
SELECT CONV(12, 10, 42);
Резултат:
+-----------------+| CONV(12, 10, 42) |+-----------------+| NULL |+------------------+
Аргументи на низ
Числото се интерпретира като цяло число, но може да бъде определено като цяло число или низ.
SELECT CONV('C', 16, 2);
Резултат:
+-----------------+| CONV('C', 16, 2) |+-----------------+| 1100 |+------------------+
Нулеви аргументи
CONV()
връща null
ако някой от аргументите е null
:
SELECT CONV(null, 10, 8);
Резултат:
+------------------+| CONV(нула, 10, 8) |+------------------+| NULL |+-------------------+
Липсващи аргументи
Извикване на CONV()
с грешен брой аргументи или без никакви аргументи води до грешка:
SELECT CONV();
Резултат:
ГРЕШКА 1582 (42000):Неправилен брой параметри в извикването на естествена функция „CONV“
И:
SELECT CONV(10, 2);
Резултат:
ГРЕШКА 1582 (42000):Неправилен брой параметри в извикването на естествена функция „CONV“