sql實現10進位制16進位制轉換函式
--10進位制轉16進位制
create function inttohex(@int10 int)
returns varchar(8)
begin
declare @int10 int
declare @str16 nvarchar(8)
set @str16=''
if(@int10>0)
begin
while @int10>0
begin
set @str16=substring('0123456789ABCDEF',@int10%16+1,1)+@str16
set @int10=@int10/16
end
end
else
begin
set @str16='0'
end
return @str16
end
--16進位制轉10進位制
create function hextoint(@str16 varchar(8))
returns int
begin
declare @int10 int
declare @i int
set @int10=0
set @i=1
while @i<=len(@str16)
begin
set @int10=@int10+
convert(int,
(case when substring(@str16,@i,1)<='9' then substring(@str16,@i,1)
when substring(@str16,@i,1)<='A' then '10'
when substring(@str16,@i,1)<='B' then '11'
when substring(@str16,@i,1)<='C' then '12'
when substring(@str16,@i,1)<='D' then '13'
when substring(@str16,@i,1)<='E' then '14'
when substring(@str16,@i,1)<='F' then '15' end )) * power(16,len(@str16)-@i)
set @i=@i+1
end
return @int10
end
create function inttohex(@int10 int)
returns varchar(8)
begin
declare @int10 int
declare @str16 nvarchar(8)
set @str16=''
if(@int10>0)
begin
while @int10>0
begin
set @str16=substring('0123456789ABCDEF',@int10%16+1,1)+@str16
set @int10=@int10/16
end
end
else
begin
set @str16='0'
end
return @str16
end
--16進位制轉10進位制
create function hextoint(@str16 varchar(8))
returns int
begin
declare @int10 int
declare @i int
set @int10=0
set @i=1
while @i<=len(@str16)
begin
set @int10=@int10+
convert(int,
(case when substring(@str16,@i,1)<='9' then substring(@str16,@i,1)
when substring(@str16,@i,1)<='A' then '10'
when substring(@str16,@i,1)<='B' then '11'
when substring(@str16,@i,1)<='C' then '12'
when substring(@str16,@i,1)<='D' then '13'
when substring(@str16,@i,1)<='E' then '14'
when substring(@str16,@i,1)<='F' then '15' end )) * power(16,len(@str16)-@i)
set @i=@i+1
end
return @int10
end
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-670935/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- JavaScript 進位制轉換(2進位制、8進位制、10進位制、16進位制之間的轉換)JavaScript
- shell 中轉換16進位制10進位制
- oracle 給的轉換函式實現 十六進位制---->十進位制Oracle函式
- 遞迴函式實現十進位制正整數轉換為二進位制,八進位制,十六進位制遞迴函式
- 口算 16 進位制轉換 10 進位制,但只適合兩位的 16 進位制
- sql 數字轉換為16進位制數函式SQL函式
- Oracle中的二進位制、八進位制、十進位制、十六進位制相互轉換函式Oracle函式
- 【轉帖】Oracle中的二進位制、八進位制、十進位制、十六進位制相互轉換函式Oracle函式
- C# 2進位制、8進位制、10進位制、16進位制...各種進位制間的輕鬆轉換C#
- oracle_16進位制與10進位制轉換小示例Oracle
- ORACLE使用函式對二進位制、十進位制、十六進位制數互相轉換Oracle函式
- Qt進位制轉換(十進位制轉十六進位制)QT
- 十進位制轉換任意進位制--鏈棧實現
- oracle中進位制轉換函式Oracle函式
- 【進位制轉換】十進位制與十六進位制相互轉換方法
- 2進位制_8進位制_16進位制之間快速轉換的技巧.txt
- 二進位制,八進位制,十進位制,十六進位制的相互轉換
- 10進位制和16進位制互轉的例子
- 【進位制轉換】二進位制、十六進位制、十進位制、八進位制對應關係
- ORACLE中用一條SQL實現其它進位制到十進位制的轉換OracleSQL
- 進位制之間的轉換之“十六進位制 轉 十進位制 轉 二進位制 方案”
- java中二進位制、八進位制、十進位制、十六進位制的轉換Java
- 二進位制,八進位制,十進位制,十六進位制之間的轉換
- Python 進位制互相轉換(二進位制、十進位制和十六進位制)Python
- 計算機基礎進位制轉換(二進位制、八進位制、十進位制、十六進位制)計算機
- [MSSQL]字串轉成16進位制函式SQL字串函式
- 十六進位制轉換為八進位制
- 十六進位制轉換為十進位制
- JAVA 二進位制,八進位制,十六進位制,十進位制間進行相互轉換Java
- 彙編實現10進位制轉16進位制並以ASCII碼輸出ASCII
- 計算機求解10進位制轉換任意進位制計算機
- 進位制轉換
- 大話二進位制,八進位制,十進位制,十六進位制之間的轉換
- Oracle 內部2,8,10,16進位制轉換函式包Oracle函式
- 二進位制轉十進位制快速轉換方法
- JavaScript十進位制轉換為二進位制JavaScript
- Oracle二進位制與十進位制轉換Oracle
- lua之m進位制轉換為n進位制-任意進位制轉換演算法演算法