In MariaDB, CONV()
is een ingebouwde numerieke functie die getallen converteert tussen verschillende nummerbases. U kunt het bijvoorbeeld gebruiken om een getal van grondtal 10 naar grondtal 16 te converteren.
Het retourneert een tekenreeksrepresentatie van het geconverteerde getal.
Syntaxis
De syntaxis gaat als volgt:
CONV(N,from_base,to_base)
Waar N
is het te converteren getal, from_base
is de basis om van te converteren, en to_base
is de basis om naar te converteren.
De minimale basis is 2 en de maximale basis is 36.
Voorbeeld
Hier is een voorbeeld:
SELECT CONV(12, 10, 16);
Resultaat:
+------------------+ | CONV(12, 10, 16) | +------------------+ | C | +------------------+
Het resultaat is C
want dat is de hexadecimale waarde (grondtal 16) voor 12
.
Dus de telling gaat als volgt:0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C.
Hier is er nog een:
SELECT CONV(1234567, 10, 16);
Resultaat:
+-----------------------+ | CONV(1234567, 10, 16) | +-----------------------+ | 12D687 | +-----------------------+
Negatieve basis
Als de to_base
argument is een negatief getal, N
wordt beschouwd als een ondertekend nummer. Anders wordt het behandeld als niet-ondertekend.
SELECT CONV(-12, 10, -16);
Resultaat:
+--------------------+ | CONV(-12, 10, -16) | +--------------------+ | -C | +--------------------+
Buiten bereik basis
De minimumbasis is 2 en de maximumbasis is 36. Als het tweede of derde argument niet binnen dit bereik valt, null
wordt geretourneerd.
Voorbeeld
SELECT CONV(12, 10, 42);
Resultaat:
+------------------+ | CONV(12, 10, 42) | +------------------+ | NULL | +------------------+
Tekenreeksargumenten
Het getal wordt geïnterpreteerd als een geheel getal, maar kan worden opgegeven als een geheel getal of een tekenreeks.
SELECT CONV('C', 16, 2);
Resultaat:
+------------------+ | CONV('C', 16, 2) | +------------------+ | 1100 | +------------------+
Nullargumenten
CONV()
retourneert null
als een van de argumenten null
is :
SELECT CONV(null, 10, 8);
Resultaat:
+-------------------+ | CONV(null, 10, 8) | +-------------------+ | NULL | +-------------------+
Ontbrekende argumenten
CONV()
. aanroepen met het verkeerde aantal argumenten, of zonder argumenten resulteert in een fout:
SELECT CONV();
Resultaat:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'CONV'
En:
SELECT CONV(10, 2);
Resultaat:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'CONV'