国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

SQL SERVER 自定義函數 整數轉成指定長度的16進制 轉換成指定長度的16進制 不足補0

2024-08-31 00:54:49
字體:
來源:轉載
供稿:網友
SQL SERVER 自定義函數 整數轉成指定長度的16進制 轉換成指定長度的16進制 不足補0

最近做項目擴展的時候,遇到問題就是將整型轉換成指定長度的16進制

剛開始就是直接使用 cast(12 as varbinary(4))但是發現這個不能解決我的問題

所以就上網搜了一下,然后改了改,下面就是函數:

 1 Create Function IntToHexLength(@Num int,@HxLength int) 2 returns varchar(16) 3 as 4 begin 5   declare @Mods int,@res varchar(16),@Length int 6   set @res='' 7   while @Num <> 0  8   begin 9     set @Mods =@Num % 1610     if @Mods > 9 11       set @res = Char(Ascii('A')+@Mods-10)+@res12     else 13       set @res = Cast(@Mods as varchar(4)) + @res14     set @Num = @Num/1615   end16   set @Length=@HxLength-DataLength(@res)17   if(DataLength(@res)<@HxLength)18   BEGIN19       while @Length<>020       begin21       SET @res='0'+@res22       set @Length=@Length-123       end24   END25   return @res26 end
View Code

然后用select dbo.IntToHexLength(15,4)

就得到:這樣就符合了要求!


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 鄱阳县| 琼中| 姜堰市| 滨州市| 库车县| 马边| 阿拉善左旗| 株洲县| 襄樊市| 和静县| 伊宁市| 通州区| 无锡市| 南昌市| 义乌市| 泗洪县| 慈利县| 麦盖提县| 郯城县| 卢氏县| 盘山县| 泽库县| 方城县| 申扎县| 内黄县| 平山县| 陆川县| 揭东县| 梅河口市| 澄城县| 沭阳县| 天峨县| 清镇市| 醴陵市| 南靖县| 上蔡县| 应用必备| 得荣县| 柘荣县| 大姚县| 广东省|