今天难得没有工作,就把最近工作中书写存储过程时经常会用到的函数整理一下。以便方便以后温故、查阅。
1.patIndex 用法
在对数据库中的数据进行模糊查询时,经常会使用的是通过 like 关键字查询,不过效率很低,查询速度较慢,
我们可以使用patIndex 实现相同的功能
例如: select * from TdepartInfo where departName like '%销售%'
select * from TdepartInfo where parIndex('%销售%',departName)>0
select patIndex('%a%c%','abcacbcdefg') 返回1
select patIndex('%ac%','abcacbcdefg') 返回4
2.charIndex 用法
说明:以参数3为起始字符位置,参数1在参数2中出现的位置;数据库中的索引号是从1开始计算的;
select charIndex('a','a123a45a67',1) 返回1
select charIndex('a','a123a45a67',6) 返回8
3.SUBSTRING ( expression , start , length )
select subString('hello Demi',2,5) 返回ello
4.repalce(要置换的字段,需要替代的字符,替换后的字符)
SELECT REPLACE('abcdefghicde','cde','xxx') 返回abcxxxghixxx
5.ident_current(表名)[该表中有一个字段是int型的字增长字段]
select ident_current('TdepartInfo')
返回的是刚刚从TdepartInfo表中插入的数据的自增Id值
6.len(变量)得到的是变量的长度
select len('123456') 返回6
7.left(变量,长度)
select left('yangshufang',4) 返回yang
select right('yangshufang',7)返回shufang
8.ltrim(变量)去掉变量左边的空格
9.rtrim(变量)去掉变量右边的空格
10.convert(要转换成的变量类型,变量)
select convert(int,'123')返回123
select convert(varchar(100),getdate(),120) 返回yyyy-mm-dd
select convert(varchar(100),getdate(),24)返回 hh:mm:ss
11.cast(变量 as 要转换成的变量类型)
select cast('123' as int)返回123
12.stuff(字符串变量, 起始位置,长度,要替换的字符串)
select stuff('abcdef',2,3,'12345')返回a12345ef