浅谈MySQL函数


Posted in MySQL onOctober 05, 2021

 主要MySQL函数介绍又以下:

  • 数学函数
  • 字符串函数
  • 时间函数
  • 加密函数

1、数学函数

注意: 每个函数前面都需要加 : SELECT

数学函数

  • ABS() 返回绝对值 如: (-100) 值 : 100
  • PI() 返回Π的圆规率 如 (不用写) 值 : 3.1415926
  • CEIL() 向上取整数 如:(3.14) 值 :4 ( 注意第三个是i )
  • FLOOR() 向下取整数 如: (3.14) 值 :3
  • POW(x,y) x的y次方 如(2,3) 值 :8
  • RAND() 随机返回0-1值 如 :() 值 : 0.018137501569592863
  • TRUNCATE(x,y) x保留y位小数 如 :(3.1415926,3) 值 :3.141
-- abs() 绝对值
SELECT ABS (-100);

-- pi() 返回圆 Π 规率
SELECT PI();

--  SQRT ()返回非负数x的二次方
SELECT SQRT(2);

--  POW 返回 x的 y 次乘方 需要
SELECT POW(2,10);
SELECT POWER(2,10)

-- CELL() or 
SELECT CEIL(3.14);  -- 向上取整数

-- floor()
SELECT FLOOR(3.14); -- 向下取整数

-- round() 四舍五入取整数 还可以保留小数
SELECT ROUND(3.4);
SELECT ROUND(3.5);
SELECT ROUND(3.7,2)


-- pow() x 的 y 次方
SELECT POW(2,3);


-- random 随机0到1 
SELECT RAND();

-- truncate() 保留小数 选择 
SELECT TRUNCATE(3.14159265758,3);
SELECT TRUNCATE(RAND()* 1000 ,3);

2、字符串函数

字符串函数

  • LENGTH() 获取长度 如:('abc') 值为: 3
  • CHAR_LENGTH 长度 如:('add') 值为: 3
  • UPPER() 字符串里英文全大写 ('abcde') 值:ABCDE
  • LOWER() 字符串里英文全小写 ()
  • TRIM() 去空格
  • REVERES() 反转
  • REPLACE(str,len1,len2) len1代替len2
  •  SUBSTRLNG(y,z) 截取y 到 z
-- 字符串函数  -- RIGHT

SELECT LENGTH('fdsajfadslksdafk');

SELECT CHAR_LENGTH('fdsajfadslksdafk');

-- lower upper  --全部变成大写、小写
SELECT UPPER('fdsajfadslksdafk');
SELECT LOWER('AFASDF');

-- trim()  去两端空格
SELECT TRIM( ' abc ' )
SELECT TRIM('    afdjkadsfjkll  asd;fasf     ');

-- reverse() 反转
SELECT REVERSE('abcdefg');
SELECT REVERSE(TRIM('    afdjkadsfjkll  asd;fasf     '));、


-- replace(str,len1,len2) len1 代替 len2
SELECT REPLACE('QQ群个个都是人才,说话又好听' , '人才', '鬼才');

SELECT REPLACE('路演其是班草', '阿呆呆', '曹某某');

--  截取 y 截取 z 
SELECT SUBSTRING('监x里个个都是人才,说话又好听',4,5);

3、日期函数

日期函数

  • SYSDATE() 系统日期+时间
  • CURDATE() 系统日期
  • CURETIME() 系统时间
  • WEEKDAY() 返回日期参数 注意时间:0-6需要+1
  • DAYNAME() 系统告诉你 今天星期几
  • YEAR() 查年
  • MONTH() 查月
  • DAY()查日
  • HOUR()查时
  • MINUTE() 查分
  • SECOUND() 查秒
  • WEEK() 查周

ADDDATE(date,interval,值) 添加到后面得日期 如 : (NOW(),INTERVAL,50 YEAR)

​ DATEDIFF(date,date) 连个值得相隔 如 : ABS(DATEDIFF('2005-8-26','2021-9-23'))

-- 日期函数

-- 系统当前日期 sysdate()
SELECT SYSDATE() 系统当前日期; -- 要 时分秒 
-- (日期和时间)
SELECT CURDATE() 系统当前日期; -- 当前的日期 
-- (日期)
SELECT CURTIME() 系统当前时间 ;
-- (时间)

--  dayofweek() 今天时本周week -月month - 年year
SELECT DAYOFYEAR(SYSDATE()) 今天是这一年的第几天;
SELECT DAYOFMONTH(SYSDATE()) 今天是这一月的第几天; 
SELECT DAYOFWEEK('2021-9-19')  今天是这一周的第几天; -- 1-7

-- weekday 
SELECT WEEKDAY(SYSDATE()) + 1 今天是星期几; -- 0-6

-- dayname 星期几 
SELECT DAYNAME('2001-9-18') 

-- 年月日时分秒 year month day hour minute second
SELECT YEAR(SYSDATE()) 年;
SELECT MONTH(SYSDATE()) 月;
SELECT DAY(SYSDATE()) 日;

SELECT HOUR(SYSDATE()) 时;
SELECT MINUTE(SYSDATE()) 分;
SELECT SECOND(SYSDATE()) 秒; 
-- 周 
SELECT WEEK(SYSDATE()) 周; 


-- adddate(date,interval expr type)  添加时间后的日期
-- 假设你还有50年寿命,50年后这个时间是多少
SELECT ADDDATE(NOW(),INTERVAL 50 YEAR);
SELECT ADDDATE(NOW(), INTERVAL 50 SECOND);

-- datediff(date1, date2) 两个时间的间隔  
SELECT ABS(DATEDIFF('2005-8-26','2021-9-23')); -- 1984 - 3 - 24


-- 假设路演其出生时间2005年7月15 请问他到选择活了多少分钟
-- 假设他还有80年的寿命 80年后是多久

SELECT  ABS(DATEDIFF('2005-7-15',SYSDATE()) ) * 1444  ;

SELECT  ADDDATE(NOW(), INTERVAL 80 YEAR);

4、加密函数

  • PASSWORD(str) 加密后不可以逆转
  • MD5(str) 加密后可以逆转 注:以前不许
  • CHARSET() 查看mysel 版本
-- 加密函数

SELECT PASSWORD('123456') 加密后不可以逆转;
SELECT PASSWORD('666666') 加密后不可以逆转;

-- MD5
SELECT PASSWORD('123456') 加密后不可以逆转 MD5('123456') 加密后可以逆转

-- 版本查看
SELECT VERSION();
SELECT CHARSET('123456');


-- md5 加密
-- 雪花推特算法

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

MySQL 相关文章推荐
将图片保存到mysql数据库并展示在前端页面的实现代码
May 02 MySQL
linux下导入、导出mysql数据库命令的实现方法
May 26 MySQL
MYSQL 无法识别中文的永久解决方法
Jun 03 MySQL
Mysql中where与on的区别及何时使用详析
Aug 04 MySQL
MySQL约束超详解
Sep 04 MySQL
MySQL中的引号和反引号的区别与用法详解
Oct 24 MySQL
MySQL如何快速创建800w条测试数据表
Mar 17 MySQL
WINDOWS 64位 下安装配置mysql8.0.25最详细的教程
Mar 22 MySQL
MySQL中IO问题的深入分析与优化
Apr 02 MySQL
mysql如何查询连续记录
May 11 MySQL
MYSQL事务的隔离级别与MVCC
May 25 MySQL
MySQL transaction事务安全示例讲解
Jun 21 MySQL
Mysql binlog日志文件过大的解决
Oct 05 #MySQL
MySQL修炼之联结与集合浅析
MySQL分库分表详情
MySQL空间数据存储及函数
Sep 25 #MySQL
MySQL基础快速入门知识总结(附思维导图)
MySQL连接控制插件介绍
Sep 25 #MySQL
Mysql案例刨析事务隔离级别
Sep 25 #MySQL
You might like
不用iconv库的gb2312与utf-8的互换函数
2006/10/09 PHP
IIS6+PHP5+MySQL5+Zend Optimizer+phpMyAdmin安装配置图文教程 2009年
2009/06/08 PHP
php配合jquery实现增删操作具体实例
2013/12/12 PHP
学习php设计模式 php实现备忘录模式(Memento)
2015/12/09 PHP
JavaScript访问样式表代码
2010/10/15 Javascript
使图片旋转的3种解决方案
2013/11/21 Javascript
谷歌Chrome浏览器扩展程序开发小记
2016/01/06 Javascript
jQuery实现鼠标经过购物车出现下拉框代码(推荐)
2016/07/21 Javascript
JS 获取HTML标签内的子节点的方法
2016/09/21 Javascript
详解springmvc 接收json对象的两种方式
2016/12/06 Javascript
微信小程序中用WebStorm使用LESS
2017/03/08 Javascript
微信小程序 页面跳转及数据传递详解
2017/03/14 Javascript
使用jQuery卸载全部事件的思路详解
2017/04/03 jQuery
JavaScript使用链式方法封装jQuery中CSS()方法示例
2017/04/07 jQuery
NodeJs通过async/await处理异步的方法
2017/10/09 NodeJs
关于JavaScript语句后面的分号问题
2017/12/07 Javascript
微信{"errcode":48001,"errmsg":"api unauthorized, hints: [ req_id: 1QoCla0699ns81 ]"}
2018/10/12 Javascript
小程序卡片切换效果组件wxCardSwiper的实现
2020/02/13 Javascript
Vue+Vuex实现自动登录的知识点详解
2020/03/04 Javascript
[02:30]DOTA2放量测试专访海涛:呼吁保护新手玩家
2013/08/26 DOTA
Python实现获取网站PR及百度权重
2015/01/21 Python
Python functools模块学习总结
2015/05/09 Python
Python元组知识点总结
2019/02/18 Python
python 求1-100之间的奇数或者偶数之和的实例
2019/06/11 Python
Python MongoDB 插入数据时已存在则不执行,不存在则插入的解决方法
2019/09/24 Python
django 框架实现的用户注册、登录、退出功能示例
2019/11/28 Python
在jupyter notebook 添加 conda 环境的操作详解
2020/04/10 Python
python3代码输出嵌套式对象实例详解
2020/12/03 Python
使用HTML5 Canvas API中的clip()方法裁剪区域图像
2016/03/25 HTML / CSS
AmazeUI 缩略图的实现示例
2020/08/18 HTML / CSS
美国香薰蜡烛品牌:PADDYWAX
2018/10/06 全球购物
教师现实表现材料
2014/02/14 职场文书
合伙协议书范本
2014/04/21 职场文书
一篇文章带你搞懂Python类的相关知识
2021/05/20 Python
对象析构函数__del__在Python中何时使用
2022/03/22 Python
【海涛教你打DOTA】黑鸟第一视角解说
2022/04/01 DOTA