Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menukar Integer kepada Hex dan Sebaliknya dalam SQL Server?

Bagaimana untuk Menukar Integer kepada Hex dan Sebaliknya dalam SQL Server?

DDD
DDDasal
2025-01-05 04:11:43671semak imbas

How to Convert Integers to Hex and Vice Versa in SQL Server?

Menukar Integer kepada Hex dan Sebaliknya dalam SQL Server

Apabila berurusan dengan penukaran integer-to-hex dan hex-to-integer, SQL Server berbeza daripada sistem pengurusan pangkalan data lain. Begini cara untuk menyelesaikan tugasan ini dalam Microsoft SQL Server:

Menukar Integer kepada Hex

Untuk menukar integer kepada heksadesimal dalam SQL Server, gunakan fungsi CONVERT:

SELECT CONVERT(VARBINARY(8), int_field);

Untuk contoh:

SELECT CONVERT(VARBINARY(8), 16777215); -- Result: 0xFFFFFF

Menukar Hex kepada Integer

Begitu juga, anda boleh menukar rentetan heksadesimal kepada integer menggunakan fungsi CONVERT:

SELECT CONVERT(INT, hex_field);

Untuk contoh:

SELECT CONVERT(INT, 0xFFFFFF); -- Result: 16777215

Menangani Rentetan Heksadesimal

Jika nilai perenambelasan disimpan sebagai rentetan, pertimbangkan perkara berikut:

  • Jika rentetan bermula dengan penanda '0x', gunakan:
SELECT CONVERT(INT, CONVERT(VARBINARY, '0x1FFFFF', 1));
  • Jika rentetan tidak mempunyai penanda '0x', gunakan:
SELECT CONVERT(INT, CONVERT(VARBINARY, '1FFFFF', 2));

Perhatikan bahawa rentetan mesti mengandungi bilangan digit heks genap.

Tambahan Pertimbangan

  • Gunakan fungsi CAST untuk menukar literal integer kepada heksadesimal.
  • Untuk butiran lanjut tentang gaya binari, rujuk bahagian "Gaya Binari" dalam dokumentasi Microsoft untuk CAST dan CONVERT.
  • SQL Server 2008 atau lebih baru disyorkan untuk penukaran ini kaedah.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Integer kepada Hex dan Sebaliknya dalam SQL Server?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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