Mysql基础之常见函数


Posted in MySQL onApril 22, 2021

一、常见函数分类

1.1单行函数:

  • 字符函数
  • 字符控制函数(CONCAT、SUBSTR、LENGTH。。。)
  • 大小写控制函数
  • 数学函数
  • 日期函数
  • 流程控制函数

1.2分组函数:

分组函数功能偏向统计,比如,AVG()、COUNT()、MAX()、MIN()、SUM()

单行函数与分组函数:

(1)分组函数:主要用来进行统计、聚合使用到的函数,分组函数接收多个输入,返回一个输出。

(2)单行函数:上面提到的字符函数、数学函数、日期函数、都属单行函数的范畴,单行函数只对一行进行变换,每行返回一个结果。

二、单行函数

字符函数

concat:字符连接函数

substr:截取字符串,

SELECT SUBSTR('李莫愁爱上了陆展元',7)  out_put; // 索引由1开始,陆展元
SELECT SUBSTR('李莫愁爱上了陆展元',1,3) out_put;// 李莫愁

instr:返回子串第一次出现的索引,如果找不到返回0

SELECT INSTR('杨不殷六侠悔爱上了殷六侠','殷六侠') AS out_put;// 3

trim:去掉左边与右边的空格元素

SELECT LENGTH(TRIM('    张翠山    ')) AS out_put;
SELECT TRIM('aa' FROM 'aaaaaaaaa张aaaaaaaaaaaa翠山aaaaaaaaaaaa')  AS out_put;//中间的a并不能去掉

upper:大写转换字符串

lower:小写转换字符串

lpad: 用指定的字符实现左填充指定长度

SELECT LPAD('殷素素',2,'*') AS out_put;// 数字表示指定的长度

rpad:用指定的字符实现右填充指定长度

replace:替换

三、数学函数

四舍五入
SELECT ROUND(-1.55);// -2
SELECT ROUND(1.567,2);// 指定字符精度 1.56

向上取整
SELECT CEIL(-1.02);// -1

向下取整
SELECT FLOOR(-9.99);// -10

截断
SELECT TRUNCATE(1.69999,1);// 1.6

取余
SELECT MOD(-10,3); // -1
SELECT MOD(-10,-3);// -1
SELECT MOD(10,-3);// 1

四、日期函数

返回当前系统日期+时间
SELECT NOW();// 2021-03-16 09:00:35

返回当前系统日期,不包含时间
SELECT CURDATE();// 2021-03-16

返回当前时间,不包含日期
SELECT CURTIME();// 09:00:35

可以获取指定的部分,年、月、日、小时、分钟、秒
SELECT YEAR(NOW()) 年;
SELECT YEAR('1998-1-1') 年;
SELECT MONTH(NOW()) 月;
SELECT MONTHNAME(NOW()) 月;

将字符通过指定的格式转换成日期
SELECT STR_TO_DATE('1998-3-2','%Y-%c-%d') AS out_put; // 1998-03-02

将日期转换成字符
SELECT DATE_FORMAT(NOW(),'%y年%m月%d日') AS out_put;

五、其他函数

SELECT VERSION(); // sql版本
SELECT DATABASE();// 当前数据库
SELECT USER();// root@localhost

六、控制函数

IF函数
SELECT IF(10<5,'大','小'); //小

case函数的使用1:case后带参,表示某一种确定的情况

case 要判断的字段或表达式
when 常量1 then 要显示的值1或语句1;
when 常量2 then 要显示的值2或语句2;

SELECT salary 原始工资,department_id,
CASE department_id
WHEN 30 THEN salary*1.1
WHEN 40 THEN salary*1.2
WHEN 50 THEN salary*1.3
ELSE salary
END AS 新工资
FROM employees;

case函数的使用2:case后不带参数,表示一种模糊的区间

SELECT salary,
CASE 
WHEN salary>20000 THEN 'A'
WHEN salary>15000 THEN 'B'
WHEN salary>10000 THEN 'C'
ELSE 'D'
END AS 工资级别
FROM employees;

到此这篇关于Mysql基础之常见函数的文章就介绍到这了,更多相关mysql常见函数内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

MySQL 相关文章推荐
详解MySQL的半同步
Apr 22 MySQL
MySQL获取所有分类的前N条记录
May 07 MySQL
MySQL 表空间碎片的概念及相关问题解决
May 07 MySQL
MySQL 隔离数据列和前缀索引的使用总结
May 14 MySQL
mysq启动失败问题及场景分析
Jul 15 MySQL
MySQL约束超详解
Sep 04 MySQL
MySQL数据库超时设置配置的方法实例
Oct 15 MySQL
mysql事务对效率的影响分析总结
Oct 24 MySQL
MySQL数据库事务的四大特性
Apr 20 MySQL
提高系统的吞吐量解决数据库重复写入问题
Apr 23 MySQL
优化Mysql查询的示例
Apr 26 MySQL
MySQL数据库之存储过程 procedure
Jun 16 MySQL
MySQL分库分表与分区的入门指南
MySQL8.0.24版本Release Note的一些改进点
Apr 22 #MySQL
详解MySQL的半同步
详解MySQL事务的隔离级别与MVCC
Apr 22 #MySQL
MySQL之高可用集群部署及故障切换实现
教你用eclipse连接mysql数据库
MySQL 慢查询日志深入理解
You might like
php通过COM类调用组件的实现代码
2012/01/11 PHP
php 网上商城促销设计实例代码
2012/02/17 PHP
PHP mkdir()无写权限的问题解决方法
2014/06/19 PHP
ThinkPHP中关联查询实例
2014/12/02 PHP
laravel 5 实现模板主题功能(续)
2015/03/02 PHP
php查询内存信息操作示例
2019/05/09 PHP
yii2.0框架多模型操作示例【添加/修改/删除】
2020/04/13 PHP
PHP 超级全局变量相关总结
2020/06/30 PHP
Code:findPosX 和 findPosY
2006/12/20 Javascript
cnblogs csdn 代码运行框实现代码
2009/11/02 Javascript
js setattribute批量设置css样式
2009/11/26 Javascript
IE和Firefox下event事件杂谈
2009/12/18 Javascript
JS闭包与延迟求值用法示例
2016/12/22 Javascript
Node.js 的模块知识汇总
2017/08/16 Javascript
使用InstantClick.js让页面提前加载200ms
2017/09/12 Javascript
Vue工程模板文件 webpack打包配置方法
2017/12/26 Javascript
vue的.vue文件是怎么run起来的(vue-loader)
2018/12/10 Javascript
详解Vue 全局变量,局部变量
2019/04/17 Javascript
centos系统升级python 2.7.3
2014/07/03 Python
python如何实现远程控制电脑(结合微信)
2015/12/21 Python
利用Python爬虫给孩子起个好名字
2017/02/14 Python
聊聊Python中的pypy
2018/01/12 Python
python 读取目录下csv文件并绘制曲线v111的方法
2018/07/06 Python
Python Pywavelet 小波阈值实例
2019/01/09 Python
python 通过可变参数计算n个数的乘积方法
2019/06/13 Python
python多线程+代理池爬取天天基金网、股票数据过程解析
2019/08/13 Python
django formset实现数据表的批量操作的示例代码
2019/12/06 Python
Python2与Python3的区别详解
2020/02/09 Python
如何用Java实现列出某个目录下的所有子目录
2015/07/20 面试题
业务员简历自我评价
2014/03/06 职场文书
客户答谢会活动方案
2014/08/31 职场文书
2014年9.18纪念日演讲稿
2014/09/14 职场文书
自主招生学校推荐信
2014/09/26 职场文书
2015年世界卫生日活动总结
2015/02/09 职场文书
2016暑期政治学习心得体会
2016/01/23 职场文书
Python办公自动化PPT批量转换操作
2021/09/15 Python