'SQL'에 해당되는 글 36건

  1. 2013.12.24 MSSQL 10진수를 16진수로 변환하기

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].DecToHex') and OBJECTPROPERTY(id, N'IsScalarFunction') = 1)
drop function [dbo].DecToHex
GO

SET ANSI_NULLS ON
SET QUOTED_IDENTIFIER ON
GO

/*-------------------------------------------------------------------------
 DecToHex
 목  적 : 10진수를 16진수 Hex 스트링으로 벼환
 EX)
  declare @result_val varchar (1000)
  set @result_val = dbo.DecToHex (256*256-1,10)
  select @result_val
*/-------------------------------------------------------------------------
CREATE FUNCTION DecToHex  (@nNum Int -- 10진수 값
                                        , @nLen int ) -- 결과 자리수
RETURNS varchar(1000)
AS
Begin

--SET NOCOUNT ON
DECLARE @i INT
declare @Result varchar (1000)
SET @Result=''
 
WHILE @nNum > 0
BEGIN
 
 SELECT @Result = CASE @nNum % 16
   WHEN 10 THEN 'A' WHEN 11 THEN 'B'
   WHEN 12 THEN 'C' WHEN 13 THEN 'D'
   WHEN 14 THEN 'E' WHEN 15 THEN 'F'
   ELSE
    CONVERT(VARCHAR, @nNum % 16)
   END + @Result 

 SET @nNum = @nNum / 16
 
END
 
SET @Result = REPLACE(SPACE(@nLen - LEN(@Result)), ' ','0') + @Result 
--SET NOCOUNT OFF
return @Result
end
GO


Posted by 펀펀