各类函数总结

--*************************字符串函数**********************   

--charindex搜索第一个字符在第二个字符中的位置,返回一个数值

语法:

charindex(‘字符串1’,’字符串2’)

案例:获取“梦想”在字符串“赢在中国,梦想与未来”中的位置

select charindex('梦想','赢在中国,梦想与未来')

 

--len获取一个字符串的长度

语法:

len(‘字符串’) 

案例:获取字符串“赢在中国,梦想与未来”的长度

select len('赢在中国,梦想与未来')

 

--upper把字符串中为小写英文的字符转化为大写英文,如果字符串中有汉字,并不会报错,不会执行转换

语法:upper(‘小写英文字符’)

 

案例:讲字符串“I hava a dream”转化为大写

select upper('i have a dream ,我有一个梦想!')

 

--ltrim清除字符串左边的空格,不会清除右边的空格

语法:

Ltrim(‘          字符串’)

 

案例:清除字符串“   赢在中国,梦想与未来”左边的空格

select ltrim('          赢在中国,梦想与未来          ')

 

--rtrim清除字符串右边的空格,不会清除左边的空格

语法:

Rtrim(‘字符串                 ’)

 

案例:清除字符串“赢在中国,梦想与未来    ”右边的空格

select rtrim('          赢在中国,梦想与未来          ')

 

--函数是可以嵌套的,例如清除左右两边的空格

语法:

ltrim(rtrim(‘             字符串              ’))

案例:清楚字符串“   赢在中国,没想与未来  ”左右俩边的空格

select ltrim(rtrim('          赢在中国,梦想与未来          '))

 

--right从字符串右边返回指定数目的字符

语法:

Right(‘字符串’,指定搜索字符的数目)

 

案例:从右边开始搜索出“未来”

select right('赢在中国,梦想与未来',2)

 

--replace替换一个字符串中的字符

语法:

Replace(‘字符串’,’被替换的字符’,’替换的字符’)

 

案例:把“赢在中国,梦想与未来”中的“与”用“和”代替

select replace('赢在中国,梦想与未来','','')

 

--stuff删除一个字符串中指定长度的字符,用其他任意字符来代替

语法:

Stuff(‘字符串’,从第几个字符开始删除,删除几个字符,’替换的字符’)

 

案例:删除赢在中国,换成让梦成真

select stuff('赢在中国,梦想与未来',1,4,'让梦成真')

 

--*****************************日期函数*******************

 

--getdate获取系统现在的时间

语法:

getdate()

 

案例:获取当前系统时间

select getdate()

 

--dateadd添加时间

语法:

Datedd(/////,添加多少,在什么时间段上添加)

 

案例:在系统时间的基础上添加两年

select dateadd(year,2,getdate())

 

--datediff求时间差,小时间在前,大时间在后

语法:

Datediff(/////,’小时间’,’大时间’)

 

案例:计算从‘1995-05-15’到现在过了多少个小时

select datediff(hour,'1995-05-15',getdate())

 

--datename指定日期部分的字符串形式,获取某时间是星期几

语法:

Datename(dw,getdate())

案例:获取今天是星期几

Select datename(ss, getdate())

 

--datepart获取指定日期部分的整数

语法:

Datepart(//,日期)

 

案例:获取现在系统时间下的月份

Select datepart(mm, getdate())

 

 

 

 

--*****************************数学函数*******************

 

--rand返回0-1之间的随机数

语法: 

Rand()

 

案例:返回0-1之间的随机数

Select rand()

 

--abs取表达式的绝对值

语法: 

abs(数值)

 

案例:取-4的绝对值

Select abs(-4)

 

--ceiling向上取整

语法:

Ceiling(数值)

 

 

案例:取49.001的整数

Select ceiling(49.001)

 

--floor向下取整

语法:

floor(数值)

 

 

案例:取49.999的整数

Select floor(49.999)

 

--power取表达式的幂值

语法:

power(数值,次方数)

 

 

案例:取5的三次方的值

Select power5,3

 

--round四舍五入

语法:

Round(数值,小数点后几位)

 

 

案例:49.501的四舍五入的值

Select round(49.501,1)

 

 

--sign整数返回1,负数返回-1,0返回0

语法:

Sign(数值)

 

 

案例:-2的返回值

Select sign(-2)

 

--sqrt 数值的平方根

语法:

Sqrt(数值)

 

 

案例:9的平方根

Select sqrt(9)

 

 

 

--*****************************系统函数*******************

 

--convert转化数据类型

语法:

Convert(数据类型,另一种数据类型值)

 

案例:把数字12345转化为字符串 

Select convert(nvarchap(50),12345)

 

 

--*****************************聚合函数*******************

 

--sum()返回所有数值的总和,只能是数字类型

语法:

Sum(数字类型的列)

 

案例:计算score列的总和

Select sum(score)

From score

Where 1=1

 

--avg返回所有数值的平均数,只能是数字类型

语法:

Avg(数字类型的列)

 

案例:计算score列的平均数

Select avg(score)

From score

Where 1=1

 

--max()最大值和min()最小值,可以是数字类型,字符型,日期类型

语法:

Max(列名)  min(列名)

 

案例:计算score列的最大值

Select max(score)

From score

Where 1=1

 

--count()计数函数,

语法:

Count(表达式) 

 

案例:查询score表中的有多少条数据

Select count(score)

From score

Where 1=1

 

 

--1000到的随机数

select left(Rand()*8999+1000,4)

你可能感兴趣的:(总结)