Logo

SQL Server DEC2HEX Function

Updated 2023-11-08 16:01:25.040000

Description

Use the scalar function DEC2HEX to convert a decimal number to hexadecimal.

Syntax

SELECT [westclintech].[wct].[DEC2HEX] (
  <@Number, float,>
 ,<@Places, float,>)

Arguments

@Number

is the decimal integer you want to convert. If @Number is negative, valid @Places values are ignored and DEC2HEX returns a 10-character (40-bit) hexadecimal number in which the most significant bit is the sign bit. The remaining 39 bits are magnitude bits. Negative numbers are represented using two's-complement notation. @Number is an expression of type float or of a type that can be implicitly converted to float.

@Places

The number of characters to use. If @Places is NULL, DEC2HEX uses the minimum number of characters necessary. @Places is useful for padding the return value with leading 0s (zeros). @Places is an expression of type float or of a type that can be implicitly converted to float.

Return Type

nvarchar(4000)

Remarks

If @Number is less than -549,755,813,888 or @Number is greater than 549,755,813,887, DEC2HEX returns an error.

If @Number is negative, DEC2HEX ignores places and returns a 10-character hexadecimal number.

@Places is truncated to zero decimal places.

Examples

select wct.DEC2HEX(-512, NULL);

This produces the following result.

column 1
FFFFFFFE00
select wct.DEC2HEX((power(16.0000, 10.0000) / 2) - 1, NULL);

This produces the following result.

column 1
7FFFFFFFFF
select wct.DEC2HEX(100, 10);

This produces the following result.

column 1
0000000064