在SQL Server指定的数据库中,有Programmability目录,在这个目录下,有存储过程,有功能函数。

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go ALTER function [dbo].[fn_10to36] (
@i int
)
returns varchar(30)
as
begin declare @r varchar(30)
set @r= '' declare @m int
declare @s int
set @s=@i
while @s> =36
begin
set @m=@s % 36
set @r=case when @m <10 then cast(@m as varchar)
else cast(char(ascii( 'A')+@m-10) as varchar) end+@r
set @s=@s/36
end
if @s> 0 or (@s=0 and @r= '')
set @r=case when @s <10 then cast(@s as varchar)
else cast(char(ascii( 'A')+@s-10) as varchar) end+@r
return @r
end   

比如上述,执行

is not a recognized function name.

上面报错,因为要加dbo.[function],

select dbo.[fn_10to36_ByJasmine] (101) 即可

下面是36wei转10位

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go ALTER function [dbo].[fn_36to10] (
@str varchar(30)
)
returns int
as
begin declare @returnValue int
select @returnValue = 0
declare @str36 varchar(32)
declare @subWork varchar(1)
declare @workIndex int
select @str36 = '123456789ABCDEFGHIJKLMNOPQRSTUVWSYZ' declare @len int
declare @i int
select @i = 1
select @len = datalength(@str) while (@i <= @len)
begin
select @subWork = SUBSTRING(@str, @i, 1)
select @workIndex = charindex( @subWork, @str36)
select @returnValue = @returnValue + (@workIndex * power(36, @len-@i))
select @i = @i + 1
end return @returnValue
end

  

前面再带个参数的

CREATE FUNCTION [DBO].[FN_10TO36] (
@I INT,@B VARCHAR(10))
RETURNS VARCHAR(30)
AS
BEGIN DECLARE @R VARCHAR(30)
SET @R='' DECLARE @M INT
DECLARE @S INT
SET @S=@I
WHILE @S>=36
BEGIN
SET @M=@S %36 ----取余
SET @R=CASE WHEN @M<10 THEN CAST(@M AS VARCHAR)
ELSE CAST(CHAR(ASCII('A')+@M-10)AS VARCHAR) END +@R
SET @S=@S/36 -----取值
END
IF @S>0 OR (@S=0 AND @R='')
SET @R=CASE WHEN @S<10 THEN CAST(@S AS VARCHAR)
ELSE CAST(CHAR(ASCII('A')+@S-10) AS VARCHAR ) END +@R
RETURN @B+RIGHT('0000'+@R,5)
END

  

SQL 中常用的功能函数,自定义的功能行数的更多相关文章

  1. Sql 中常用时间处理函数

    1.Sql 中常用时间处理函数  GETDATE()  返回当前的日期和时间 DATEPART()  返回日期/时间的单独部分 DATEADD()   返回日期中添加或减去指定的时间间隔 DATEDI ...

  2. SQL点滴30—SQL中常用的函数

    原文:SQL点滴30-SQL中常用的函数 该文章转载自http://www.cnblogs.com/jiajiayuan/archive/2011/06/16/2082488.html 别人的总结,很 ...

  3. SQL中Round(),Floor(),Ceiling()函数的浅析

    项目中的一个功能模块上用到了标量值函数,函数中又有ceiling()函数的用法,自己找了一些资料,对SQL中这几个函数做一个简单的记录,方便自己学习.有不足之处欢迎拍砖补充 1.round()函数遵循 ...

  4. Python常用模块中常用内置函数的具体介绍

    Python作为计算机语言中常用的语言,它具有十分强大的功能,但是你知道Python常用模块I的内置模块中常用内置函数都包括哪些具体的函数吗?以下的文章就是对Python常用模块I的内置模块的常用内置 ...

  5. 实际项目开发过程中常用C语言函数的9大用法

    C语言是当中最广泛的计算机编程语言,是所有计算机编程语言的祖先,其他计算机编程语言包括当前流行的Java语言,都是用C语言实现的,C语言是编程效率最高的计算机语言,既能完成上层应用开发,也能完成底层硬 ...

  6. 在sql中使用了 hashbytes 函数

    在做项目的时候,在sql中使用了hashbytes函数,运用md5算法去加密一密码.代码如下 DECLARE @psw nvarchar(20) SET @psw = 'admin' SELECT h ...

  7. Impala系列: Impala常用的功能函数

    --=======================查看内置的函数--=======================hive 不需要进入什么内置数据库, 即可使用 show functions 命令列出 ...

  8. php中常用的正则表达式函数

    php中常用的正则表达式函数 * preg_match() * preg_match_all() * preg_replace() * preg_filter() * preg_grep() * pr ...

  9. iOS开发中常用的数学函数

    iOS开发中常用的数学函数 /*---- 常用数学公式 ----*/ //指数运算 3^2 3^3 NSLog(,)); //result 9 NSLog(,)); //result 27 //开平方 ...

随机推荐

  1. 双屏互动h5

    情侣H5:https://www.25xt.com/allcode/10837.html 双屏互动:https://www.digitaling.com/articles/18180.html

  2. Eloquent JavaScript #09# Regular Expressions

    索引 Notes js创建正则表达式的两种方式 js正则匹配方式(1) 字符集合 重复匹配 分组(子表达式) js正则匹配方式(2) The Date class 匹配整个字符串 Choice pat ...

  3. How to click on a point on an HTML5 canvas in Python selenium webdriver

    https://stackoverflow.com/questions/29624949/how-to-click-on-a-point-on-an-html5-canvas-in-python-se ...

  4. django 处理静态文件

    settings: STATIC_URL = 'static/'STATIC_ROOT = os.path.join(BASE_DIR, 'static') urls: from django.con ...

  5. 深入理解softmax函数

    Softmax回归模型,该模型是logistic回归模型在多分类问题上的推广,在多分类问题中,类标签  可以取两个以上的值.Softmax模型可以用来给不同的对象分配概率.即使在之后,我们训练更加精细 ...

  6. Android之单元测试及数据库操作

    一.安卓下的单元测试1.创建一个单元类,继承超类AndroidTestCase2.在AndroidManifest.xml配置清单中配置以下两点首先在manifest节点下添加节点instrument ...

  7. py4CV例子1猫狗大战和Knn算法

    1.什么是猫狗大战: 数据集来源于Kaggle(一个为开发商和数据科学家提供举办机器学习竞赛.托管数据库.编写和分享代码的平台),原数据集有12500只猫和12500只狗,分为训练.测试两个部分. 2 ...

  8. centOS6.8开放防火墙端口

    1.找到防火墙配置文件,/etc/sysconfig/iptables.如果是新装的linux系统,防火墙默认是被禁掉的,没有配置任何防火墙策略,所以不存在iptables.需要在控制台使用iptab ...

  9. maven 新建项目时报错“Could not calculate build plan: Failure to transfer org.apache.maven.plugins:。。。。。。。。。。。。。。”

    首先,我们看到观察这个错误:Failure to transfer org.apache.maven.plugins,这种错误是项目部署时,maven所关联的仓库中插件的设置出错了. 所以我们需要找到 ...

  10. 关于linux下自定义的 alias文件和自定义函数库的通用写法(只适合自己的)

    使用alias和自定义的function的必要性和重要性就不说了 , 自己的通用做法是: 可以创建: ~/bin/my.alias 文件 作为自定义的 alias专门文件 创建: ~/libsh/my ...