关于数据库的一些函数的使用
一:字符串函数
CharIndex('str1','str2',index) 从index开始查询str1在str2中的开始位置
注意点:如果在str2中没有找到str1,那么返回0
例:select charindex('好好学','S1是S2的基础,所以大家好好学',1)
len(): 获取小括号中字符串的长度,空格也算一个字符长度
注意点:如果内容以多个空格结尾,那么结尾的多个空格,是不计算长度的
如果空格在字符前面,则需要计算长度
例:select len('大家都是好孩子')
upper(): 将括号中出现的英文全部转换成大写
例:select upper('i can speak english.你能吗?')
LTrim(): 清除括号中内容左边的空格(left:right)
例:select rtrim(' 生活不是林黛玉, ')
RTrim(): 清除括号中内容右边的空格
例:select rtrim(' 生活不是林黛玉, ')
substring('字符串',截取的位置,截取的长度) 截取指定字符串的长度
例:select substring('我是中国人,我爱自己伟大的祖国,真的',6,1)
right(): 从字符串右边返回指定类型的字符
例:select right('大家今天好像都没有交日记本,我去',3)
left(): 从字符串右边返回指定类型的字符
例:select left('大家今天好像都没有交日记本,我去',3)
replace('str1','要替换的字符','目标字符')
例:select replace('王吉达,残疾人,虽然手不残疾,但是X残疾','残疾','好')
stuff('字符串',删除的起始位置,删除的长度,'插入的字符串')
例:select stuff('我爱你中国,我爱你故乡',4,2,'北京欢迎你')
二:日期函数
getdate(): 获取当前日期和时间
例:select getdate()
dateadd(按年/月/日添加,增量,时间)
例: select dateadd(yy,100,'2014-8-6')
select dateadd(year,-20,getdate())
datediff(按年/月/日求差,小时间,大时间)
例:select datediff(year,'1998-01-01',getdate())
datename:获取某个日期是星期几 (返回的是字符串)
例:select datename(dw,'2014-08-06')
datepart(mm,日期): 获取指定日期对应的年/月/日部分 (返回数值型)
例:select datepart(yy,getdate())
三:数学函数
rand(): 产生一个到之间的随机数
例:select right(rand(),4)
abs: 取绝对值
例:select abs(-10)
ceiling(): 天花板,你要看天花板,抬头,向上取整
例:select ceiling(1.999991)
floor: 向下取整
例:select floor(1.999999)
power() 求幂值
例:select power(4,4) - -4的4次方
round: 将一个数字四舍五入到指定精度
例:select round(42.564,1)
sign: 如果括号中写的是一个正数,返回1,如果是负数,返回-1
例:select sign(20)
select sign(-20)
sqrt() 开平方
例:select sqrt(9)