: SQL Server takes the beginning of that hex string and attempts to fit it into a 4-byte integer. Because the first 4 bytes ( 0xE4F3F000 ) represent a value larger than the maximum positive signed integer (
), it wraps around into a negative value in two's complement notation. : SQL Server takes the beginning of that
The T-SQL expression convert(int,sys.fn_sqlvarbasetostr(HashBytes('MD5','1522521276'))) returns the integer value . Breakdown of the Execution : SQL Server takes the beginning of that
: Generates a 128-bit MD5 hash of the string '1522521276'. The resulting binary value is 0xE4F3F000CC6A3F98F7A831A601E6E002 . : SQL Server takes the beginning of that
: This internal function converts that binary hash into its string representation: '0xe4f3f000cc6a3f98f7a831a601e6e002' .