ホームページ >データベース >mysql チュートリアル >SQL Server で整数と 16 進文字列を変換するにはどうすればよいですか?
SQL Server での整数と 16 進文字列の変換
提供されている Sybase クエリと Excel クエリは、整数を 16 進数に変換し、16 進数文字列を整数に変換することを目的としています。ただし、これらのクエリは Microsoft SQL Server で実行すると失敗する可能性があります。幸いなことに、SQL Server にはこれらの変換を実行する簡単な方法があります。
整数を 16 進数に変換する
整数 (int_value として表される) を 16 進文字列に変換するには、次のようにします。次の構文を使用します:
SELECT CONVERT(VARBINARY(8), int_value)
このクエリは、整数の 8 バイトの 16 進文字列表現。
16 進数を整数に変換
16 進文字列 (hex_string として表される) を整数に変換するには、次の構文を使用します。 :
SELECT CONVERT(INT, hex_string)
このクエリは次の値を返します16 進数の文字列に相当する整数。
Update
2015 年に、上記の変換が整数として提供された 16 進値でのみ機能するという制限に対処するための更新が行われました。リテラル。次の例は、varchar 列に格納される 16 進文字列を変換する方法を示しています。
With '0x' Marker:
SELECT CONVERT(INT, CONVERT(VARBINARY, '0x1FFFFF', 1))
Without ' 0x' マーカー:
SELECT CONVERT(INT, CONVERT(VARBINARY, '1FFFFF', 2))
メモ16 進文字列には偶数の 16 進数が含まれている必要があります。奇数の桁数を指定すると、エラーが発生します。
詳細については、SQL Server の CAST および CONVERT ドキュメントの「バイナリ スタイル」セクションを参照してください。これらのメソッドは、SQL Server 2008 以降のバージョンで適切に機能するはずです。
以上がSQL Server で整数と 16 進文字列を変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。