Rumah > pangkalan data > tutorial mysql > Menggunakan nombor heksadesimal dalam MySQL?

Menggunakan nombor heksadesimal dalam MySQL?

PHPz
Lepaskan: 2023-09-13 18:45:02
ke hadapan
1227 orang telah melayarinya

在 MySQL 中使用十六进制数字?

Untuk menggunakan perenambelasan, gunakan fungsi CONV() untuk menukar antara asas. Sintaksnya adalah seperti berikut -

SET anyVariableName = CONV(yourHexValue,16,10);
Salin selepas log masuk

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 ;
Salin selepas log masuk

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;
Salin selepas log masuk

Gunakan arahan CALL untuk memanggil prosedur tersimpan di atas. Pertanyaannya adalah seperti berikut -

mysql> call SP_HEX_TO_DEC('A');
Salin selepas log masuk

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)
Salin selepas log masuk

Semak terus dengan penyataan pilih.

mysql> select conv('AB',16,10) as DecimalResult;
Salin selepas log masuk

Berikut ialah output -

+---------------+
| DecimalResult |
+---------------+
| 171           |
+---------------+
1 row in set (0.00 sec)
Salin selepas log masuk

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.
Salin selepas log masuk

Atas ialah kandungan terperinci Menggunakan nombor heksadesimal dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan