简介
数学函数:处理数字
字符串函数:处理字符串
日期和时间函数:处理日期和时间,获取时间
条件判断函数:控制条件选择
系统信息函数:获取MySQL系统信息,包括数据库名称,当前用户名和数据库版本
加密函数:对字符串加密和解密
其他函数:格式化函数和锁函数
数学函数
函数 | 作用 | 函数 | 作用 |
abs(x) | 绝对值 | log(x) | 自然对数 |
ceil(x) | 大于等于x的最小整数 | log10(x) | 10为底的对数 |
floor(x) | 小于等于x的最大整数 | radians(s) | 转换为弧度 |
rand() | 0~1的随机数 | degrees(x) | 转换为角度 |
rand(x) | 0~1的随机数,x值相同时返回的随机数相同 | sin(x) | 求正弦 |
sign(x) | 返回x的符号,当x为负数、0、正数时分别返回-1、0、+1 | asin(x) | 求反正弦 |
pi() | 圆周率 | cos(x) | 求余弦 |
truncate(x,y) | x保留到小数点后y位 | acos(x) | 求反余弦 |
round(x,y) | x保留到小数点后y位,截断时四舍五入 | tan(x) | 正切 |
pow(x,y),power(x,y) | x的y次方 | atan(x) | 反正切 |
sqrt(x) | 求平方根 | cot(x) | 余切 |
exp(x) | e的x次方 |
|
|
mod(x,y) | 取余 |
|
|
字符串函数
函数 | 作用 | 函数 | 作用 |
char_length(s) | 返回字符数 | repeat(s,n) | 将s重复n次 |
length(s) | 返回字符长度 | replace(s,s1,s2) | 将s中的s1用s2代替 |
concat(s1,s2,……) | 将多个字符串合并为一个字符串 | strcmp(s1,s2) | 比较字符串s1和s2 |
concat_ws(x,s1,s2,……) | 同上,但使用x连接 | substring(s,n,len) | s字符串第n个位置len长的字符串 |
insert(s1,x,len,s2) | 用s2替换s1中x的位置开始长度len的字符串 | mid(s,n,len) | 同上 |
upper(x),ucase(x) | 转为大写 | locate(s1,s),position(s1 in s) | 从s中获取s1的开始位置 |
lower(x),lcase(x) | 转为小写 | instr(s,str) | 同上 |
left(s,n) | 返回s的前n个字符串 | reverse(s) | 将s反转 |
right(s,n) | 返回s的后n个字符串 | elt(n,s1,s2,……) | 返回第n个字符串 |
lpad(s1,len,s2) | s2用来填充s1的开始处,使得字符串长度为len | export_set(x,s1,s2) |
|
rpad(s1,len,s2) | s2用来填充s1的结尾处,使得字符串长度为len | field(s,s1,s2,……) | 返回第一个与字符串s匹配的字符串的位置 |
ltrim(s) | 去掉s开始处的空格 | find_in_set(s1,s2) | 返回在字符串s2中与s1匹配的字符串的位置 |
rtrim(s) | 去掉s结尾处的空格 | make_set(x,s1,s2,……) | 按二进制从s1,s2,……,sn中选取字符串 |
trim(s) | 去掉s开始处和结尾处的空格 | space(n) | 返回n个空格 |
trim(s1 from s) | 去掉s开始处和结尾处的s1 |
|
|
时间日期函数
条件判断函数
1. if(expression,v1,v2)
当表达式成立时,返回v1,否则返回v2
mysql> select if('a'='a','true','false');
2. ifnull(v1,v2)
如果v1不为空则显示v1,否则显示v2
3.case函数
case when expr1 then v1 [when expr2 then v2...] [else vn] end
mysql> select name,score,case when score>90 then 'good' when score>=80 then 'pass' else 'fail' end level from computer_stu;
系统信息函数
加密函数
1. password(str)
2.加密函数md5(str)
3.加密函数encode(str,pswd_str)
4.解密函数decode(crypt_str,pswd_str)