SQL Server中的函数(字符串函数,日期函数,数学函数,系统函数)
字符串函数(用于控制返回给用户的字符串)
1.charindex 寻找一个指定的字符串在另一个字符串中的起始位置 select charindex (‘JBNS‘,‘my Jbns course‘,1)返回:4
2.len 返回传递给它的字符串长度 selectlen("sql server课程")返回:12
3.upper 把传递给它的字符串转换为大些 selectupper(‘sql server课程‘)返回:SQL SERVER课程
4.Ltrim 清除字符左边的空格 selectltrim(‘ 周智宇 ‘)返回:周智宇 (后面的空格保留)
5.Rtrim 清除字符右边的空格 selectRtrim(‘ 周智宇 ‘)返回: 周智宇(前面的空格保留)
6.Right 从字符串右边返回指定数目的字符 selectRight(‘买卖提,吐尔松‘,3)返回:吐尔松
7.replace 替换一个字符串中的字符 selectReplace(‘莫乐可切,杨可‘,‘可’,‘兰’) 返回:莫乐兰切.杨兰
8.stuff 在一个字符串中,删除指定长度的字符,并在该位置插入一个新的字符串 selectstuff(‘ABCDEFG‘,2,3,‘我的音乐我的世界‘) 返回:A我的音乐我的世界EFG
日期函数(用于操作日期值)
1.getdate 取得当前的系统日期 select getdate()返回:今天的日期
2.dateadd 将指定的数值添加到指定的日期部分后的日期 select dateadd(mm,4,‘01/01/2009‘)返回:以当前的日期格式返回05/01/2009
3.datediff 两个日期之间的指定日期部分的间隔 select dateiff(mm,‘01/01/2009‘,‘05/01/2009‘)返回:4
4.datename 日期中指定日期部分的字符串形式 select datename(dw,‘01/01/2000‘)返回;saturday或星期六
5.datepart 日期中指定日期部分的整数形式 select datepart(day,‘01/15/2000‘)返回:15
数学函数(用于对数值进行代数运算)
1.rand 返回从0到1之间的随机float值 select rand()返回:0.79288062146374
2.abs 取数值表达式的绝对值 select abs(-43)返回:43
3.ceiling 取大于或等于指定数值,表达式的最小整数 select ceiling(43.5)返回:44
4.floor 取小于或等于指定表达式的最大整数 select floor(43.5)返回:43
5.power 取数值表达式的幂值 select power(5,2)返回:25
6.round 将数值表达式四舍五入为指定精度 select round (43.543,1)返回:43.500
7.sign 对于整数返回+1,对于负数返回-1,对于0则返回0 select sign(-43)返回:-1
8.sqrt 取浮点表达式的平方根 select sqrt(9)返回:3
系统函数(获取有关SQL Server中对象和设置的系统信息)
1.convert 用来转变数据类型 select convert(varchar(5),12345)返回:字符串12345
2.current_user 返回当前用户的名字 selectCurrent_user 返回:你登录的用户名
3.datalength 返回用于指定表达式的字节数 select datalength(‘中国A联盟‘) 返回:5
4.host_name 返回当前用户所登录的计算机名字 select host_name()返回:你所登录的计算机的名字
5.system_user 返回当前所登录的用户名称 select system_user返回:你当前所登录的用户名
6.user_name 从给定的用户ID返回用户名 select user_name(1)返回:从任意数据库中返回”dbo“
例:
1.年满20周岁的条件 datediff(dd,borndate,getdate())>=365*20
2.获取Email的域名 right(Email,len(Email) - charindex(‘@‘,Email))
3.获取当前日期的年,月,日 convert(varchar(4),datepart(YYYY,getdate()))