前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基于SQL的36进制转10进制函数

基于SQL的36进制转10进制函数

原创
作者头像
鲁郭大侠
修改2020-03-06 09:49:49
1.5K0
修改2020-03-06 09:49:49
举报
文章被收录于专栏:高级程序设计高级程序设计

ALTER FUNCTION [dbo].[Convert36To10]

(

@str varchar(2)

)

RETURNS int

AS

BEGIN

DECLARE @X36 varchar(36);

DECLARE @rstr varchar(2);

DECLARE @rchar varchar(1);

DECLARE @idx int;

DECLARE @val int;

DECLARE @jval int;

set @X36 = '0123456789ABCDEFGHIJHKLMNOPQRSTUVWXYZ';

set @val = 0;

set @jval =1;

set @rstr = REVERSE(@str);

while (len(@rstr) >= 1)

begin

set @rchar = SUBSTRING(@rstr,1,1);

set @val = @val + (CHARINDEX(@rchar,@X36 COLLATE Latin1_General_CS_AS)-1)*@jval ;

set @rstr = SUBSTRING(@rstr,2,len(@rstr)-1);

set @jval = @jval * 36 ;

end

return @val;

END

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档