Mysql
 sql >> Datenbank >  >> RDS >> Mysql

CONV() – Konvertieren Sie Zahlen zwischen verschiedenen Basen in MySQL

Wenn Sie mit MySQL arbeiten, können Sie CONV() verwenden Funktion, um eine Zahl von einer Basis in eine andere umzuwandeln. Es braucht drei Argumente; die umzuwandelnde Zahl, die ursprüngliche Basis und die Basis, in die Sie umwandeln möchten.

Syntax

Hier ist die offizielle Syntax:

CONV(N,from_base,to_base)

Wobei from_base die ursprüngliche Basis ist, und to_base ist die Basis, in die Sie die Zahl umwandeln möchten.

Beispiel – Dezimal zu Binär

Hier ist ein Beispiel für die Umwandlung einer Zahl von der Basis 10 (dezimal) in die Basis 2 (binär):

SELECT CONV(3, 10, 2);

Ergebnis:

+----------------+
| CONV(3, 10, 2) |
+----------------+
| 11             |
+----------------+

Also können wir diesen 3 sehen in Dezimal konvertiert zu 11 im Binärformat.

Im Fall von Binary hat MySQL auch einen BIN() Funktion, mit der Sie von Dezimal in Binär umwandeln können. Daher entspricht das obige Beispiel dem Folgenden:

SELECT BIN(3);

Ergebnis:

+--------+
| BIN(3) |
+--------+
| 11     |
+--------+

Beispiel – Binär zu Dezimal

Ein Vorteil von CONV() ist jedoch Funktion ist, dass es Ihnen auch ermöglicht, in die andere Richtung zurückzuwandeln. Wir könnten also das obige Beispiel umstellen, um von binär nach dezimal zu konvertieren:

SELECT CONV(11, 2, 10);

Ergebnis:

+-----------------+
| CONV(11, 2, 10) |
+-----------------+
| 3               |
+-----------------+

Beispiel – Dezimal zu Hexadezimal

In diesem Beispiel konvertieren wir von dezimal nach hexadezimal:

SELECT CONV(13, 10, 16);

Ergebnis:

+------------------+
| CONV(13, 10, 16) |
+------------------+
| D                |
+------------------+

Wie hier gezeigt, 13 in Basis 10 (dezimal) konvertiert in D in Basis 16 (hexadezimal).

Hier ist ein weiteres Beispiel, diesmal mit einer größeren Zahl:

SELECT CONV(12734, 10, 16);

Ergebnis:

+---------------------+
| CONV(12734, 10, 16) |
+---------------------+
| 31BE                |
+---------------------+

Ähnlich dem BIN() Funktion für binäre Konvertierungen hat MySQL auch ein HEX() Funktion, die eine Zahl von dezimal in hexadezimal umwandelt. Das vorherige Beispiel könnte also wie folgt umgeschrieben werden:

SELECT HEX(12734);

Ergebnis:

+------------+
| HEX(12734) |
+------------+
| 31BE       |
+------------+

Beispiel – Basis 36

Die CONV() -Funktion akzeptiert eine minimale Basis von 2 (binär) und eine maximale Basis von 36. Hier ist ein Beispiel für die Umwandlung von Basis 10 in Basis 36:

SELECT CONV(12734, 10, 36);

Ergebnis:

+---------------------+
| CONV(12734, 10, 36) |
+---------------------+
| 9TQ                 |
+---------------------+