Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Konversi bilangan bulat ke hex dan hex ke integer

Konversi INT ke heksadesimal:

SELECT CONVERT(VARBINARY(8), 16777215)

Konversikan hex ke INT:

SELECT CONVERT(INT, 0xFFFFFF)

Pembaruan 16-03-2015

Contoh di atas memiliki batasan yang hanya berfungsi ketika nilai HEX diberikan sebagai literal integer. Untuk kelengkapan, jika nilai yang akan dikonversi adalah string heksadesimal (seperti yang ditemukan di kolom varchar) gunakan:

-- If the '0x' marker is present:
SELECT CONVERT(INT, CONVERT(VARBINARY, '0x1FFFFF', 1))

-- If the '0x' marker is NOT present:
SELECT CONVERT(INT, CONVERT(VARBINARY, '1FFFFF', 2))

Catatan: String harus berisi jumlah digit heksagonal yang genap. Jumlah digit ganjil akan menghasilkan kesalahan.

Rincian lebih lanjut dapat ditemukan di bagian "Gaya Biner" dari CAST dan CONVERT (Transact-SQL). Saya yakin SQL Server 2008 atau yang lebih baru diperlukan.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hasilkan Tanggal antara rentang tanggal

  2. Konversi 'datetime2' menjadi 'date' di SQL Server (Contoh T-SQL)

  3. Ubah Kata Sandi untuk Login SQL Server

  4. Cara Menggunakan Properti IDENTITY() di SQL Server

  5. Batalkan pivot dengan nama kolom