前言
- 不同的DBMS软件中支持的自带默认函数存在些许不同,本文主要介绍一下大多数情况下都支持的自带默认函数
- 本文中的内容大都节选自《MySQL必知必会》第11章节,编写本文目的主要是做个小总结,有兴趣者可以下载(ktx8)查看
1.文本处理函数
函数 | 说明 |
---|---|
Left(str,len) | 用于返回字符串左侧开始指定长度的子串 |
Right(str,len) | 用于返回字符串右侧开始指定长度的子串 |
Length(str) | 用于返回字符串的长度 |
Locate(substr,str) | 返回子串在字符串中第一次出现的索引(索引从1开始) |
Locate(substr,str,pos) | 返回子串在字符串从pos开始第一次出现的索引(从1开始) |
Lower(str) | 将字符串字符转换成全小写 |
Upper(str) | 将字符串转换成全大写 |
Ltrim(str) | 去掉字符串左侧的前导空格 |
Rtrim(str) | 去掉字符串右侧的尾部空格 |
Trim([remstr FROM] str) | 去除字符串左右两侧的指定字符(默认为空格) |
Trim([{BOTH | LEADING | TRAILING} [remstr] FROM] str) | 去除字符串前导/尾部的指定字符 |
Substr(str,pos)/Substring(str,pos) | 获取字符串从指定位置到结尾的子串 |
Substr(str,pos,len)/Substring(str,pos,len) | 获取字符串从指定位置开始一定长度的子串 |
Concat(str1,str2,…) | 将任意个字符串组成单个字符串 |
Lpad(str,len,padstr) | 用指定的字符在某字符串左端填充字符串到指定长度 |
Rpad(str,len,padstr) | 用指定的字符在某字符串右端填充字符串到指定长度 |
Replace(str,from_str,to_str) | 将指定字符串中的所有指定子串替换成新的子串 |
2.日期和时间处理函数
函数 | 说明 |
---|---|
Adddate(date,INTERVAL expr unit) | 给日期增加指定间隔(年、月、日) |
ADDTIME(time,n) | 给时间加上n秒间隔 |
Curdate() | 返回当前日期 |
Curtime() | 返回当前时间 |
NOW() | 返回当前日期和时间 |
Datediff(expr1,expr2) | 返回两个日期相差的天数 |
DATE_ADD(date,INTERVAL expr unit) | 给日期加上指定的时间间隔(支持任何时间单位) |
DATE_FORMAT(date,format) | 将日期时间按照指定的格式格式化 |
Year/Month/Day/DayOfWeek/Hour/Minute/Second/Time/Date | 获取输入日期时间的指定部分 |
3.数值处理函数
函数 | 说明 |
---|---|
Abs(x) | 返回一个数的绝对值 |
Round(X,D) | 给数X四舍五入到小数点后D位,默认为小数点后0位 |
Ceil(X) | 向上取整>=的最小整数 |
Floor(X) | 向下取整<=的最大整数 |
Truncate(X,D) | 截断X的精度到小数点后D位,不能大于原始精度 |
Rand() | 返回一个0~1的随机数 |
Exp(n) | 返回自然常数e的n次方 |
Mod(N,M) | 返回除法运算的余数,等价于N%M或者N-N/M*M |
PI() | 返回圆周率 |
Sin(x) | 返回一个弧度的正弦值 |
Cos(x) | 返回一个弧度的余弦值 |
Tan(x) | 返回一个弧度的正切值 |
4.系统函数
函数 | 说明 |
---|---|
User() | 返回当前会话的登录用户 |
Version() | 返回当前DBMS的版本号 |
Database() | 返回当前正在使用的数据库名 |
CONNECTION_ID() | 返回当前服务器的连接数 |