CREATE FUNCTION ufn_ConvertInt2Hex ( @Num BIGINT )
RETURNS VARCHAR(500)
AS
BEGIN
/**************************************
-- 功能:十进制转十六进制
-- 作者:GarsonZhang
-- 时间:2016年5月28日13:26:55
-- 测试:
PRINT dbo.ufn_ConvertInt2Hex(50)
**************************************/ DECLARE @Result VARCHAR(500)
SET @Result = ''
WHILE ( @Num > 0 )
BEGIN
SET @Result = SUBSTRING('0123456789ABCDEF', @Num % 16 + 1, 1)
+ @Result
SET @Num = @Num / 16
END
RETURN @Result
END
GO CREATE FUNCTION ufn_ConvertHex2Int ( @HexString VARCHAR(16) )
RETURNS BIGINT
AS /**************************************
-- 功能:十六进制转十进制
-- 作者:GarsonZhang
-- 时间:2016年5月28日13:30:24
-- 测试:
PRINT dbo.ufn_ConvertInt2Hex(50)
**************************************/
BEGIN
DECLARE @Result BIGINT DECLARE @i INT ,
@len INT DECLARE @power BIGINT
SET @power = 16 SELECT @i = 0 ,
@Result = 0 ,
@HexString = RTRIM(LTRIM(UPPER(@HexString))) SET @len = LEN(@HexString) IF ( @len = 16 )
BEGIN
IF ( ASCII(SUBSTRING(@HexString, 1, 1)) > 55 )
BEGIN
-- RaisError('超出数据运算范围', 1, 16)
RETURN @Result
END
END
-------------------------------------------------------
WHILE ( @i < @len )
BEGIN
IF ( ( SUBSTRING(@HexString, @len - @i, 1) NOT BETWEEN '' AND '' )
AND ( SUBSTRING(@HexString, @len - @i, 1) NOT BETWEEN 'A' AND 'F' )
)
BEGIN
SET @Result = 0
BREAK;
END
---------------------------------------- SET @Result = @Result + ( CHARINDEX(SUBSTRING(@HexString,
@len - @i, 1),
'0123456789ABCDEF') - 1 )
* CAST(POWER(@power, @i) AS BIGINT)
SET @i = @i + 1
END
----------------------------------------------
RETURN @Result
END

SQL十进制和十六进制相互转换的更多相关文章

  1. Oracle中的二进制、八进制、十进制、十六进制相互转换函数

    原文:Oracle中的二进制.八进制.十进制.十六进制相互转换函数 Oracle中的二进制.八进制.十进制.十六进制相互转换函数   今天在网上看到一篇关于在oracle中对各种进制数进行转换的帖子, ...

  2. 3、颜色的字符串、十进制、十六进制相互转换(color convert between dec、hex and string )

    int color_int=***; 1.(十进制整数)转换成(十六进制的字符串) String color_hex = String.format("#%06X", (0xFFF ...

  3. Int32 最大的数值是多少???(附十进制十六进制相互转换且包含正负数的java代码)

    正数转二进制很简单,转十六进制也很简单. 那么负数的情况下呢?在计算机中无法识别你给的符号“+”,"-",计算机只认识0和1 那么在二进制中如何表示负数. 先简单介绍一下负数如何转 ...

  4. Java 二进制,八进制,十进制,十六进制转换

    A.十进制转换其他 十进制转成二进制  Integer.toBinaryString(int i) 十进制转成八进制  Integer.toOctalString(int i) 十进制转成十六进制:  ...

  5. ORACLE十进制与十六进制的转换

    十进制与十六进制的转换 十进制-->十六进制 select to_char(100,'XX') from dual; 十六进制-->十进制select to_number('7D','XX ...

  6. C# 十进制与十六进制互转

    1.从十六进制转换为十进制 /// <summary> /// 十六进制转换到十进制 /// </summary> /// <param name="hex&q ...

  7. C# 二进制,十进制,十六进制

    //十进制转二进制 Console.WriteLine(Convert.ToString(69, 2)); //十进制转八进制 Console.WriteLine(Convert.ToString(6 ...

  8. C# 十进制和十六进制转换

    转至:http://www.cnblogs.com/fwind/archive/2012/04/13/2445380.html 在C#中,十进制和十六进制转换非常简单,方法如下: 十进制转为十六进制: ...

  9. Java中二进制、十进制、十六进制及ASCII码与String及字节数组与十六进制之间的转换

    public class DigitalTrans { /** * 数字字符串转ASCII码字符串 * * @param String * 字符串 * @return ASCII字符串 */ publ ...

随机推荐

  1. js回调函数(callback)理解

    Mark! js学习 不喜欢js,但是喜欢jquery,不解释. 自学jquery的时候,看到一英文词(Callback),顿时背部隐隐冒冷汗.迅速google之,发现原来中文翻译成回调.也就是回调函 ...

  2. source insight资源

    http://www.cnblogs.com/Red_angelX/p/3713935.html https://github.com/redxu/sihook

  3. Recovery with Incremental Backups

    During media recovery, RMAN examines the restored files to determine whether it can recover them wit ...

  4. Hibernate,JPA注解@Embeddable

    JPA嵌入式对象(又名组件) 在实体中可以定义一个嵌入式组件(embedded component), 甚至覆盖该实体中原有的列映射. 组件类必须在类一级定义@Embeddable注解. 在特定的实体 ...

  5. PHP将多张小图拼接成一张大图

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> < ...

  6. win2003 服务器安全设置详细介绍

    第一步:一.先关闭不需要的端口  我比较小心,先关了端口.只开了3389 21 80 1433(MYSQL)有些人一直说什么默认的3389不安全,对此我不否认,但是利用的途径也只能一个一个的穷举爆破, ...

  7. PostgreSQL的 Slony-I 数据同步

    原文--http://www.tuicool.com/articles/mMvARf 先谈谈slony的局限性: 1. DDL动作是不会被复制到: 2. 如果想使用slony来同步数据,表必须是带有主 ...

  8. 八大排序算法之四选择排序—堆排序(Heap Sort)

    堆排序是一种树形选择排序,是对直接选择排序的有效改进. 基本思想: 堆的定义如下:具有n个元素的序列(k1,k2,...,kn),当且仅当满足 时称之为堆.由堆的定义可以看出,堆顶元素(即第一个元素) ...

  9. Finding Nemo 分类: POJ 2015-07-11 10:11 10人阅读 评论(0) 收藏

    Finding Nemo Time Limit: 2000MS   Memory Limit: 30000K Total Submissions: 8117   Accepted: 1883 Desc ...

  10. 山东理工大学第七届ACM校赛-学区房问题 分类: 比赛 2015-06-26 10:23 89人阅读 评论(0) 收藏

    Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^ 题目描述 铁牌狗在学区B有一套面积为S1平方米的房子,现在他为了让后代进化成金牌狗,决定在学区A购 ...