V MariaDB, CONV() je vestavěná numerická funkce, která převádí čísla mezi různými číselnými základy. Můžete jej například použít k převodu čísla ze základu 10 na základ 16.
Vrací řetězcovou reprezentaci převedeného čísla.
Syntaxe
Syntaxe vypadá takto:
CONV(N,from_base,to_base)
Kde N je číslo, které se má převést, from_base je základ, ze kterého se má převádět, a to_base je základ pro převod.
Minimální základ je 2 a maximální základ je 36.
Příklad
Zde je příklad:
SELECT CONV(12, 10, 16); Výsledek:
+------------------+ | CONV(12, 10, 16) | +------------------+ | C | +------------------+
Výsledkem je C protože to je hexadecimální (základ 16) hodnota pro 12 .
Počítání tedy vypadá takto:0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C.
Tady je další:
SELECT CONV(1234567, 10, 16); Výsledek:
+-----------------------+ | CONV(1234567, 10, 16) | +-----------------------+ | 12D687 | +-----------------------+
Záporný základ
Pokud to_base argument je záporné číslo, N je považováno za podepsané číslo. Jinak je považováno za nepodepsané.
SELECT CONV(-12, 10, -16); Výsledek:
+--------------------+ | CONV(-12, 10, -16) | +--------------------+ | -C | +--------------------+
Mimo dosah základny
Minimální základ je 2 a maximální základ je 36. Pokud druhý nebo třetí argument není v tomto rozsahu, null je vráceno.
Příklad
SELECT CONV(12, 10, 42); Výsledek:
+------------------+ | CONV(12, 10, 42) | +------------------+ | NULL | +------------------+
Řetězcové argumenty
Číslo je interpretováno jako celé číslo, ale může být zadáno jako celé číslo nebo řetězec.
SELECT CONV('C', 16, 2); Výsledek:
+------------------+
| CONV('C', 16, 2) |
+------------------+
| 1100 |
+------------------+ Nulové argumenty
CONV() vrátí null pokud je některý z argumentů null :
SELECT CONV(null, 10, 8); Výsledek:
+-------------------+ | CONV(null, 10, 8) | +-------------------+ | NULL | +-------------------+
Chybí argumenty
Volání CONV() s nesprávným počtem argumentů nebo bez jakýchkoli argumentů vede k chybě:
SELECT CONV(); Výsledek:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'CONV'
A:
SELECT CONV(10, 2); Výsledek:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'CONV'