内置函数
字符串
日期
数学
其他:isnull convert row_number
select len('dshgjkdhsad') 返回指定字符串表达式的字符数,其中不包含尾随空格。
itrim(' anc skkmkls ') 返回删除了前导空格之后的字符表达式
select rtrim('abc ') 返回删除了尾随空格之后的字符表达式
select len(itrim(' anc skkmkls ')) 结合使用
Select replace ('abcttabchhabc', 'abc','123' )
字符串表达式3 替换字符串表达式1中出现的所有字符串表达式2 的匹配项,返回新的字符串
substring(字符串表达式,开始位置,长度) select substring('abcdef',2,2)返回bc返回子字符串
select charindex ('ss', 'eefssvss',5 )
在字符串2 中查找字符串 1,如果存在返回第一个匹配的位置,如果不存在返回0。如果字符串 1 和字符串 2 中有一个是null 则返回 null。可以指定在字符串2 中查找的起始位置。
upper
返回将小写字符数据转换为大写的字符表达式。
select getdate()
当前系统日期、时间
select DATEADD(DAY ,220, GETDATE())
在向指定日期加上一段时间的基础上,返回新的datetime 值
--计算年龄
select DATEDIFF(YEAR ,'1992-09-27', GETDATE());
返回跨两个指定日期的日期和时间边界数。
--计算年龄的人数
select count(DATEDIFF (YEAR, '1992-09-27',GETDATE ()));
--随机数
RAND ()*10
0-10之间的随机数
select floor(RAND ()*10)
返回小于或等于所给数字表达式的最大整数 忽略余数
select POWER(5 ,3)
返回给定表达式乘指定次方的值。
--使用指定的替换值替换null
select ISNULL(null,1000 )
isnull(comm,0)
如果 不为 NULL,那么返回comm;否则返回 0。
select '我的分数:' +CONVERT(char( 20),100 )
将100转换为char类型
--伪列 row_number 网站分页时使用
select * from student;
select *, ROW_NUMBER () OVER (ORDER BY name desc) from student;
select top 5 * from student order by id;