关于ASCII()函数

您所在的位置:网站首页 什么是asc-h 关于ASCII()函数

关于ASCII()函数

#关于ASCII()函数| 来源: 网络整理| 查看: 265

 例如:             SELECT   ASCII(123)   as'123',ASC('123')   as   '"123"',ASCII('abc')as   '"abc"'     的返回值是   49   49   97     该函数返回的是字符表达式最左端字符的ASCII代码值     问题点:             1。ASCII(123)   的最左端是“1”,应该返回的是“1”呀,为什么是"49"?             2。ASCII('123')   的最左端是“'”,为什么是"49"?             3。ASCII('abc,)   的最左端是“'”,为什么是"97"?

 

 

ASCII     返回字符表达式最左端字符的   ASCII   代码值。             ASCII(123)     因为ASCII处理字符串,所以123转换成字符串,1的ASCII是49         后面的就不用说了,'是字符串的定界符,所以不在计算范围内

 

汉字的ascii码:

取高位的8位运算后除以256         移位操作不一定要用移位运算来做,可以利用除法,右移8位相当于除以256         比如"烫"字的高8位为204,低八位为204         declare   @bytes   binary(2)     set   @bytes=convert(binary,'烫')         --低8位的10进制值     print   0x00FF   &   cast(@bytes   as   int)     --高8位的10进制值     print   (0xFF00   &   cast(@bytes   as   int))/256         --结果     204     204         测试     select   char(204)+char(204)         --结果                   ----       烫  

 

declare   @bytes   binary(2)     set   @bytes=convert(binary,'安')         --低8位     print   0x00FF   &   cast(@bytes   as   int)     --高8位     print   (0xFF00   &   cast(@bytes   as   int))/256         --结果     178     176         select   char(176)+char(178)         --结果     ----       安      

 

select   unicode(N'大')

-----

22823

 

select   Nchar(unicode(N'大'))

--------

 大



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3