Um Hexadezimalzahlen zu verwenden, verwenden Sie die Funktion CONV() zum Konvertieren zwischen Basen. Die Syntax lautet wie folgt:
SET anyVariableName = CONV(yourHexValue,16,10);
Um die obige Syntax zu verstehen, erstellen wir eine gespeicherte Prozedur. Die Abfrage zum Erstellen der gespeicherten Prozedur lautet wie folgt:
mysql> DELIMITER // mysql> CREATE PROCEDURE SP_HEX_TO_DEC( HEXVALUE VARCHAR(10) ) -> BEGIN -> DECLARE Decimalvalue INTEGER; -> SET Decimalvalue = CONV(HEXVALUE,16,10); -> select Decimalvalue; -> END; -> // Query OK, 0 rows affected (0.19 sec) mysql> DELIMITER ;
Die oben genannte gespeicherte Prozedur konvertiert Hexadezimalzahlen in Dezimalzahlen. Wir wissen, dass A 10 im Dezimalformat darstellt, also übergeben wir A als Argument. Verwenden Sie den CALL-Befehl, um gespeicherte Prozeduren aufzurufen.
Die Syntax lautet wie folgt:
CALL yourStoredProcedureName;
Verwenden Sie den CALL-Befehl, um die oben gespeicherte Prozedur aufzurufen. Die Abfrage lautet wie folgt: -
mysql> call SP_HEX_TO_DEC('A');
Die folgende Ausgabe zeigt den Dezimalwert, der mit der oben erstellten gespeicherten Prozedur berechnet wurde -
+--------------+ | Decimalvalue | +--------------+ | 10 | +--------------+ 1 row in set (0.00 sec) Query OK, 0 rows affected (0.01 sec)
Überprüfen Sie ihn direkt mit der Select-Anweisung.
mysql> select conv('AB',16,10) as DecimalResult;
Unten ist die Ausgabe -
+---------------+ | DecimalResult | +---------------+ | 171 | +---------------+ 1 row in set (0.00 sec)
Sehen wir uns nun den Prozess der Konvertierung von Hex in Dezimal an. Denken Sie an diese Regel –
A and B represented as 10 and 11 respectively in hexadecimal. To convert it into decimal rule is as follows: N ………+value3 *162 +value2 *161 + value1 * 160 = 10 * 161 + 11 * 160 = 160+11 = 171.
Das obige ist der detaillierte Inhalt vonHexadezimalzahlen in MySQL verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!