Rumah > Artikel > pangkalan data > Menggunakan nombor heksadesimal dalam MySQL?
Untuk menggunakan perenambelasan, gunakan fungsi CONV() untuk menukar antara asas. Sintaksnya adalah seperti berikut -
SET anyVariableName = CONV(yourHexValue,16,10);
Untuk memahami sintaks di atas, mari kita buat prosedur tersimpan. Pertanyaan untuk mencipta prosedur tersimpan adalah seperti berikut -
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 ;
Prosedur tersimpan di atas menukar perenambelasan kepada perpuluhan. Kita tahu bahawa A mewakili 10 dalam perpuluhan, jadi kita lulus A sebagai parameter. Gunakan arahan CALL untuk memanggil prosedur tersimpan.
Sintaks adalah seperti berikut -
CALL yourStoredProcedureName;
Gunakan arahan CALL untuk memanggil prosedur tersimpan di atas. Pertanyaannya adalah seperti berikut -
mysql> call SP_HEX_TO_DEC('A');
Berikut ialah output yang menunjukkan nilai perpuluhan yang dikira menggunakan prosedur tersimpan yang dibuat di atas -
+--------------+ | Decimalvalue | +--------------+ | 10 | +--------------+ 1 row in set (0.00 sec) Query OK, 0 rows affected (0.01 sec)
Semak terus dengan penyataan pilih.
mysql> select conv('AB',16,10) as DecimalResult;
Berikut ialah output -
+---------------+ | DecimalResult | +---------------+ | 171 | +---------------+ 1 row in set (0.00 sec)
Sekarang mari kita lihat proses penukaran perenambelasan kepada perpuluhan. Ingat peraturan ini -
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.
Atas ialah kandungan terperinci Menggunakan nombor heksadesimal dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!