在SQL Server 中轉換整數和十六進位字串
提供的Sybase 和Excel 查詢旨在將整數轉換為十六進制並將十六進位字串轉換為整數。但是,這些查詢在 Microsoft SQL Server 中執行時可能會失敗。幸運的是,在 SQL Server 中有一些簡單的方法可以執行這些轉換。
將整數轉換為十六進位
要將整數(表示為int_value)轉換為十六進位字串,使用下列語法:
SELECT CONVERT(VARBINARY(8), int_value)
此查詢將傳回8 位元組整數的十六進位字串表示形式。
將十六進位轉換為整數
要將十六進位字串(表示為 hex_string)轉換為整數,請使用下列語法:
SELECT CONVERT(INT, hex_string)
此查詢將傳回相當於十六進位的整數string.
更新
2015 年進行了更新,以解決上述轉換僅適用於作為整數文字提供的十六進位值的限制。以下範例示範如何轉換可能儲存在varchar 列中的十六進位字串:
使用'0x' 標記:
SELECT CONVERT(INT, CONVERT(VARBINARY, '0x1FFFFF', 1))
不帶' 0x'標記:
SELECT CONVERT(INT, CONVERT(VARBINARY, '1FFFFF', 2))
請注意十六進位字串必須包含偶數個十六進位數字;奇數位數將導致錯誤。
有關更多詳細信息,請參閱 SQL Server 的 CAST 和 CONVERT 文件的「二進位樣式」部分。這些方法應該在 SQL Server 2008 或更高版本中正常運作。
以上是如何在 SQL Server 中轉換整數和十六進位字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!