mysql常用函数总结
一、数学函数
| abs(x) | 返回x的绝对值 |
| bin(x) | 返回x的二进制(oct返回八进制,hex返回十六进制) |
| ceiling(x) / ceil(x) | 返回不小于x的最小整数值 |
| floor(x) | 返回不大于x的最大整数值,返回值转化为一个BIGINT |
| greatest(x1,x2,...,xn) | 返回集合中最大的值 |
| least(x1,x2,...,xn) | 返回集合中最小的值 |
| ln(x) | 返回x的自然对数 |
| log10(x) | 返回x的以10为底的对数 |
| log(x,y) | 返回x的以y为底的对数 |
| mod(x,y) | 返回x/y的模(余数) |
| pi() | 返回pi的值(圆周率) |
| rand() / rand(x) | 返回0到1内的随机值,可以通过提供一个参数(种子)使rand()随机数生成器生成一个指定值 |
| round(x,y) | 返回参数x的四舍五入的有y位小数的值 |
| sign(x) | 返回代表数字x的符号的值 |
| sqrt(x) | 返回非负数的平方根,传如负数返回NULL |
| truncate(x,y) | 返回数字x截短为y位小数的结果 |
| pow(x,y) /power(x,y) | 返回x的y次方 |
| exp(x) | 返回值e(自然对数的底)的x次方 |
| radians(x) | 将参数x由角度转换为弧度 |
| degrees(x) | 将参数x由弧度转换为角度 |
| sin(x) / asin(x) | 返回x的正弦和反正弦 |
| cos(x) / acos(x) | 返回x的余弦和反余弦 |
| tan(x) / atan(x) / cot(x) | 返回x的正切、反正切,余切 |
二、聚合函数(常用于group by从句的select查询中)
| avg(col) | 返回指定列的平均值 |
| count(col) | 返回指定列中非null值的个数 |
| min(col) | 返回指定列的最小值 |
| max(col) | 返回指定列的最大值 |
| sum(col) | 返回指定列的所有值之和 |
| group_concat(col) | 返回由属于一组的列值连接组合而成的结果 |
三、字符串函数
| length(str) | 返回一个字符串的字节长度,中文utf8一个汉字3个字节 |
| bit_length(str) | 返回一个字符串的比特长度 |
| char_length(str) | 返回一个字符串的字符长度 |
| concat(s1,s2...sn) | 将s1,s2...sn连成一个字符串。如果参数包含NULL,则返回值为NULL |
| concat(sep,s1,s2...sn) | 将s1,s2...sn连成一个字符串,并用sep分割 |
| insert(str,x,y,instr) | 将字符串str从第x位置开始,y个字符长的子串替换为字符串instr,返回结果 |
| lower(str) / lcase(str) | 返回将字符串str中所有字符改变为小写后的结果 |
| upper(str) / ucaes(str) | 返回将字符串str中所有字符转变为大写后的结果 |
| left(str,x) / right(str,x) | 返回字符串str中最左边 / 最右边 的x个字符 |
| lpad(str1,len,str2) / rpad(str1,len,str2) | 返回字符串str1,其左边 / 右边 由str2填充至len长度。如果str长度大于len返回值缩短至len长度 |
| ltrim(str) / rtrim(str) / trim(str) | 删除字符串左侧 / 右侧 / 两侧 的空格 |
| trim(str1 from str2) | 删除字符串str2两侧所有的子字符串str1 |
| repeat(str,x) | 返回由x个str组成的重复字符串 |
| space(n) | 返回由n个空格组成的字符串 |
| replace(str,s1,s2) | 将字符串str中的s1子串替换成s2 |
| strcmp(str1,str2) | 比较两个字符串的大小,一模一样返回0。按照分类次序,第一个小于第二个返回-1,其它返回1 |
| substring(str,x,len) / mid(str,x,len) | 返回一个将str字符串从第x个字串,截取len长度后的子串 |
| locate(str1,str) / position(str1 in str) / instr(str,str1) | 返回子串str1在str字符串中的位置 |
| reverse(str) | 将字符串str反转 |
| elt(n,s1,s2...sn) | 返回第n个字符串,如果n大于长度返回NULL |
| field(s,s1,s2...sn) | 返回字符串s在列表s1..sn中第一次出现的位置,如果找不到返回0 |
| find_in_set(str,list) | 分析逗号分隔的list列表,如果发现str,返回str在list中的位置 |
| ascii(char) | 返回字符的ascii码值 |
| quote(str) | 用反斜杠转义str中的单引号 |
四、时间函数
| curdate() / currnet_date() +0 | 返回当前的日期 年-月-日 +0表示不带横线,不写默认有横线 |
| curtime() / current_time() | 返回当前的时间 时:分:秒 |
| now() / sysdate() / localtime() / current_timestamp() | 返回当前的时间 年--秒 |
| unix_timestamp(date) | 返回一个unix时间戳 |
| from_timestamp(date) | 把一个时间戳转换成普通格式的时间 |
| utc_date() / utc_time() | 返回UTC的日期和时间 |
| month(date) /monthname(date) | 返回date中的月份 / 英文月份 |
| dayname(date) / dayofweek(date) / weekday(date) | 返回日期对应的工作日的英文名称 / 阿拉伯数字(1是周日) / (0是周一) |
| week(date) / weekofyear(date) | 返回date是一年中的第几周 |
| dayofyear(date) / dayofmonth(date) | 返回日期是一年的第几天 / 一月的第几天 |
| year(date) / quarter(date) / hour(date) /minute(date)/second(date) | 返回知道时间的年 / 季度 / 小时 / 分钟 / 秒 |
| extract / 例 select extract(year_month '2018-12-12 12:12:12') | 提取日期和时间值 |
| time_to_sec | 将时间值(HH:MM:SS)转换成秒 |
| date_format(date,format) | 将时间和日期格式化 |
| date_add() / adddate() | 日期计算 |
| date_sub() / subdate() | 日期计算 |
| add_time() | 日期计算 |
| subtime() | 日期计算 |
| date_diff() | 日期计算 |
五、控制流函数
| if(expr,v1,v2) | 如果expr成立,返回v1,不成立,返回v2 |
| ifnull(v1,v2) | 如果v1不是空,返回v1,否则返回v2 |
| nullif(v1,v2) | 如果v1=v2,返回null,否则返回v1 |
| case when[test1] then [result1]...else [default] end | 如果testn是真,则返回resultn,否则返回default |
| case [test] when[val1] then [result]...else [default]end | 如果test和valn相等,则返回resultn,否则返回default |
六、加密函数
| password(str) | 返回字符串str的加密版本,这个加密过程是不可逆转的,和unix密码加密过程使用不同的算法 |
| md5(str) | 计算字符串的md5校验和 |
| encode(str,key) | 使用key作为密钥加密字符串str,调用encode()的结果是一个二进制字符串,它以blob类型存储 |
| decode(str,key) | 使用key作为密钥解密加密字符串str |
| sha(str) | 计算字符串str的安全散列算法(sha)校验和 |
| aes_encrypt(str,key) | 返回用密钥key对字符串str利用高级加密标准算法加密后的结果,调用aes_encrypt的结果是一个二进制字符串,以blob类型存储 |
| aes_decrypt(str,key) | 返回用密钥key对字符串str利用高级加密标准算法解密后的结果 |
| encrypt(str,salt) | 使用unixcrypt()函数,用关键词salt(一个可以惟一确定口令的字符串,就像钥匙一样)加密字符串str |
select encrypt('root','salt');
select encode('xufeng','key');
select decode(encode('xufeng','key'),'key'); #加解密放在一起
select aes_encrypt('root','key');
select aes_decrypt(aes_encrypt('root','key'),'key');
select md5('');
select sha('');
七、系统信息函数
| version() | 返回mysql服务器的版本 |
| connection_id() | 查看当前用户的连接数 |
| database() / schema() | 返回当前的数据库名 |
| user() / system_user() | 返回当前登陆的用户名 |
| charset(str) | 返回字符串的字符集 |
| found_rows() | 返回最后一个select查询进行检索的总行数 |
八、其它函数
| format(x,y) | 格式化函数 |
| cast() | 改变数据类型的函数 |
| convert() | 修改字符集 |
| benchmark(count,expr) | 重复执行expr函数 |
mysql常用函数总结的更多相关文章
- mysql常用函数参考
mysql常用函数参考 对于针对字符串位置的操作,第一个位置被标记为1. ASCII(str) 返回字符串str的最左面字符的ASCII代码值.如果str是空字符串,返回0.如果str是NULL, ...
- 第十章 MySQL 常用函数
第十章 MySQL 常用函数 第一节:日期和时间函数 1,CURDATE() 返回当前日期:2,CURTIME() 返回当前时间:3,MONTH(d) 返回日期 d 中的月份值,范围是 1~12 第二 ...
- 【数据库】MySql常用函数梳理
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/5866388.html MySql常用函数梳理: 1:数学函数 使用格式:一般用于插入.修改语句中,直接 函数( ...
- 学生选课数据库SQL语句45道练习题整理及mysql常用函数(20161019)
学生选课数据库SQL语句45道练习题: 一. 设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四 ...
- MySQL常用函数介绍
MySQL常用函数介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.操作符介绍 1>.操作符优先级 mysql; +----------+ | +----------+ ...
- MySql常用函数大全
MySql常用函数大全 MySQL数据库中提供了很丰富的函数.MySQL函数包括数学函数.字符串函数.日期和时间函数.条件判断函数.系统信息函数.加密函数.格式化函数等.通过这些函数,可以简化用户的操 ...
- MySQL 常用函数介绍
MySQL 基础篇 三范式 MySQL 军规 MySQL 配置 MySQL 用户管理和权限设置 MySQL 常用函数介绍 MySQL 字段类型介绍 MySQL 多列排序 MySQL 行转列 列转行 M ...
- Mysql 常用函数(1)- 常用函数汇总
Mysql常用函数的汇总,可看下面系列文章 Mysql常用函数有哪几类 数值型函数 字符串型函数 日期时间函数 聚合函数 流程控制函数 数值型函数 函数名称 作用 ABS 求绝对值 SQRT 求二次方 ...
- Mysql 常用函数(4)- case 函数
Mysql常用函数的汇总,可看下面系列文章 https://www.cnblogs.com/poloyy/category/1765164.html case 的作用 if 的高级版,类似Java 里 ...
- Mysql 常用函数(15)- upper 函数
Mysql常用函数的汇总,可看下面系列文章 https://www.cnblogs.com/poloyy/category/1765164.html upper 的作用 将所有字符串更改为大写,然后返 ...
随机推荐
- git解决not a git repository
意思是说没有库,需要你创建 git init zzz zzz文件夹就会出现在你的项目中,里面就会有.git文件,将里面的.git剪切到与项目同一级中 关注微信小程序
- robotframework·WEB项目
date:2018527 day11 一.项目分层 1.测试数据(配置变量,如网址.用户名.密码等) 2.关键字(关键字封装,要调用直接使用关键字名即可,输入内容.点击元素.滚动滑动条等等) 3.测试 ...
- Spring MVC之ResposeEntity下载文件
Spring Mvc中用ResponseEntity方式下载文件如下: @RequestMapping("/download") public ResponseEntity< ...
- JAVA的设计模式之装饰设计模式
1.装饰设计模式 顾名思义,装饰模式就是给一个对象增加一些新的功能,而且是动态的,要求装饰对象和被装饰对象实现同一个接口,装饰对象持有被装饰对象的实例,关系图如下: 2.看这个图可能不容易理解,举两个 ...
- Spring Boot 揭秘与实战(三) 日志框架篇 - 如何快速集成日志系统
文章目录 1. 默认的日志框架 logback2. 常用的日志框架 log4j 1.1. 日志级别 1.2. 日志文件 3. 源代码 Java 有很多日志系统,例如,Java Util Logging ...
- Java包、类、数据类型、表达式和标识符
1.基本数据类型 类型名称 类型长度 取值范围 byte 8位(1字节) -128~127 short 16位(2字节) -32768~32767 int 32位(4字节) -2147483648~2 ...
- 删除Git管理的文件
首先进入由Git管理的文件夹下: 我们直接使用rm命令符删除git1.txt文件 那么你去删除一个版本库里的文件,工作区的文件就和版本库里的不一样了,现在我们采用git status来查看一下状态. ...
- Unity物品栏、商城3D物品的显示插件
UI显示3D模型插件 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享.心创新 ...
- hdoj-1503 (LCS解的输出)
题目链接 回溯输出解 #include <bits/stdc++.h> using namespace std; ; int dp[N][N],dir[N][N]; char s1[N], ...
- 牛客国庆集训派对Day1-C:Utawarerumono(数学)
链接:https://www.nowcoder.com/acm/contest/201/C 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 1048576K,其他语言20 ...