浅谈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 相关文章推荐
MySQL8.0.24版本Release Note的一些改进点
Apr 22 MySQL
MYSQL(电话号码,身份证)数据脱敏的实现
May 28 MySQL
mysql优化之query_cache_limit参数说明
Jul 01 MySQL
一次MySQL启动导致的事故实战记录
Sep 15 MySQL
SQL实战演练之网上商城数据库商品类别数据操作
Oct 24 MySQL
SQL 聚合、分组和排序
Nov 11 MySQL
MySQL创建表操作命令分享
Mar 25 MySQL
一次Mysql update sql不当引起的生产故障记录
Apr 01 MySQL
详细聊一聊mysql的树形结构存储以及查询
Apr 05 MySQL
排查MySQL生产环境索引没有效果
Apr 11 MySQL
MySQL数据库 安全管理
May 06 MySQL
mysql如何查询连续记录
May 11 MySQL
Mysql binlog日志文件过大的解决
Oct 05 #MySQL
MySQL修炼之联结与集合浅析
MySQL分库分表详情
MySQL空间数据存储及函数
Sep 25 #MySQL
MySQL基础快速入门知识总结(附思维导图)
MySQL连接控制插件介绍
Sep 25 #MySQL
Mysql案例刨析事务隔离级别
Sep 25 #MySQL
You might like
基于PHP代码实现中奖概率算法可用于刮刮卡、大转盘等抽奖算法
2015/12/20 PHP
PHP使用星号隐藏用户名,手机和邮箱的实现方法
2016/09/22 PHP
基于jquery的tab切换 js原理
2010/04/01 Javascript
jquery.artwl.thickbox.js  一个非常简单好用的jQuery弹出层插件
2012/03/01 Javascript
鼠标滚轮控制网页横向移动实现思路
2013/03/22 Javascript
js监听鼠标点击和键盘点击事件并自动跳转页面
2014/09/24 Javascript
js读写json文件实例代码
2014/10/21 Javascript
javascript匿名函数实例分析
2014/11/18 Javascript
轻松学习jQuery插件EasyUI EasyUI实现树形网络基本操作(2)
2015/11/30 Javascript
浅谈JS原型对象和原型链
2016/03/02 Javascript
jQuery侧边栏实现代码
2016/05/06 Javascript
jquery网页加载进度条的实现
2017/06/01 jQuery
JS+HTML5实现图片在线预览功能
2017/07/22 Javascript
自定义类似于jQuery UI Selectable 的Vue指令v-selectable
2017/08/23 jQuery
JS设计模式之观察者模式实现实时改变页面中金额数的方法
2018/02/05 Javascript
解决vue接口数据赋值给data没有反应的问题
2018/08/27 Javascript
Vue插槽原理与用法详解
2019/03/05 Javascript
JavaScript变速动画函数封装添加任意多个属性
2019/04/03 Javascript
详解iframe跨域的几种常用方法(小结)
2019/04/29 Javascript
Javascript数组方法reduce的妙用之处分享
2019/06/10 Javascript
在vue中使用el-tab-pane v-show/v-if无效的解决
2020/08/03 Javascript
详解Vue2的diff算法
2021/01/06 Vue.js
[04:31]2016国际邀请赛中国区预选赛妖精采访
2016/06/27 DOTA
详解Django通用视图中的函数包装
2015/07/21 Python
python之matplotlib学习绘制动态更新图实例代码
2018/01/23 Python
对python中不同模块(函数、类、变量)的调用详解
2019/07/16 Python
Python 异常处理Ⅳ过程图解
2019/10/18 Python
flask框架自定义url转换器操作详解
2020/01/25 Python
洲际酒店集团大中华区:IHG中国
2016/08/17 全球购物
Radley英国官网:英国莱德利小狗包
2019/03/21 全球购物
查询优化的一般准则有哪些
2015/03/08 面试题
高考自主招生自荐信
2013/10/20 职场文书
导师工作推荐信
2015/03/27 职场文书
2015年秋季校长开学典礼致辞
2015/07/29 职场文书
小学2016年“我们的节日·重阳节”活动总结
2016/04/01 职场文书
2019班干部竞选演讲稿范本!
2019/07/08 职场文书