--数值函数 --上线值 ,整数不变,整数部分加1 select CEILING(6.5) --下线值,整数不变,小数去掉 select floor (6.5) --指数幂 select POWER(3,2) --34: 整数 56:小数 1 四舍五入保留的位数 SELECT ROUND(34.56,1) --产生随机数0~1 SELECT RAND(2) select exp(123.4) --取绝对值 SELECT ABS (-123) --字符串 declare @a varchar(10) set @a=' abcde ' --len不会计算尾部空格的长度 select LEN(@a) --去空格 select LTRIM(' sasa ') select rtrim(' saa ') --全去空格 print LTRIM(rtrim(' s aa '))--=s aa不能去除中间的空格 -- 字符相加 print('asd'+'asd') -- 在数字和字符串相加时,先将字符串转换成数字再进行相加计算 在sql中数字有高的优先级 print('22'+123) --查找字符 查找的内容+范围+查找的起始位置 如果查寻超出查找范围返回值为0 c##返回-1 select CHARINDEX('d','sadfddd',3) select CHARINDEX('a','sabdf') --截取 --(内容,截取起始位置,截取位数) print SUBSTRING(' AB CDEF ',0,5) --起始位置可以小于零 c##里面可 --不会计算尾部长度 print SUBSTRING('ABCDEF',0,20) --从左开始截取 select left('ABCDEF',7) --从右开始截取 print right('ABCDEF',4) --转换成小写 select LOWER('aASFD汉字') --转化成小写(输入 车牌号(全是大写)) select UPPER('zxcvbnm') --翻转() select REVERSE('asdfg') --替换 print REPLACE('QWERWTY','W',' ') --返回左边第一个字母ascii码 select ASCII('i') --一个汉字两个字节 select ASCII('字') --ascii转成字符 select CHAR('99') --获取当前时间() declare @dt datetime select @dt = getdate() --获取当前时间 SELECT YEAR(@dt),MONTH(@dt),DAY(@dt) --根据指定年月 进行加减 select DATEADD(YEAR,2,GETDATE()) select DATEADD(WK,2,GETDATE()) select DATEADD(DAY,2,GETDATE()) select YEAR(@dt),MONTH(@dt),DAY(@dt) select DATEDIFF(YY,1,GETDATE()),DATEADD(YY,-1,GETDATE())