Als u met MySQL werkt, kunt u de CONV()
. gebruiken functie om een getal van het ene grondtal naar het andere te converteren. Er zijn drie argumenten nodig; het te converteren getal, het oorspronkelijke grondtal en het grondtal waarnaar je het wilt converteren.
Syntaxis
Dit is de officiële syntaxis:
CONV(N,from_base,to_base)
Waar from_base
is de originele basis, en to_base
is de basis waarnaar u het getal wilt converteren.
Voorbeeld – Decimaal naar Binair
Hier is een voorbeeld van het converteren van een getal van grondtal 10 (decimaal) naar grondtal 2 (binair):
SELECT CONV(3, 10, 2);
Resultaat:
+----------------+ | CONV(3, 10, 2) | +----------------+ | 11 | +----------------+
Dus we kunnen zien dat 3
in decimalen converteert naar 11
in binair.
In het geval van binair heeft MySQL ook een BIN()
functie waarmee u van decimaal naar binair kunt converteren. Daarom is het bovenstaande voorbeeld het equivalent van het volgende:
SELECT BIN(3);
Resultaat:
+--------+ | BIN(3) | +--------+ | 11 | +--------+
Voorbeeld – Binair naar Decimaal
Een voordeel van de CONV()
functie is dat het u ook in staat stelt om andersom terug te converteren. We kunnen het bovenstaande voorbeeld dus omzetten van binair naar decimaal:
SELECT CONV(11, 2, 10);
Resultaat:
+-----------------+ | CONV(11, 2, 10) | +-----------------+ | 3 | +-----------------+
Voorbeeld – Decimaal naar hexadecimaal
In dit voorbeeld converteren we van decimaal naar hexadecimaal:
SELECT CONV(13, 10, 16);
Resultaat:
+------------------+ | CONV(13, 10, 16) | +------------------+ | D | +------------------+
Zoals hier aangetoond, 13
in grondtal 10 (decimaal) converteert naar D
in grondtal 16 (hexadecimaal).
Hier is nog een voorbeeld, dit keer met een groter getal:
SELECT CONV(12734, 10, 16);
Resultaat:
+---------------------+ | CONV(12734, 10, 16) | +---------------------+ | 31BE | +---------------------+
Gelijk aan de BIN()
functie voor binaire conversies, MySQL heeft ook een HEX()
functie die een getal omzet van decimaal naar hexadecimaal. Het vorige voorbeeld kan dus als volgt worden herschreven:
SELECT HEX(12734);
Resultaat:
+------------+ | HEX(12734) | +------------+ | 31BE | +------------+
Voorbeeld – Basis 36
De CONV()
functie accepteert een minimum grondtal van 2 (binair) en een maximum grondtal van 36. Hier is een voorbeeld van het converteren van grondtal 10 naar grondtal 36:
SELECT CONV(12734, 10, 36);
Resultaat:
+---------------------+ | CONV(12734, 10, 36) | +---------------------+ | 9TQ | +---------------------+