浅谈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服务添加 iptables防火墙策略的方案
Apr 29 MySQL
仅用一句SQL更新整张表的涨跌幅、涨跌率的解决方案
May 06 MySQL
教你解决往mysql数据库中存入汉字报错的方法
May 06 MySQL
正确使用MySQL INSERT INTO语句
May 26 MySQL
MySQL查看表和清空表的常用命令总结
May 26 MySQL
详解MySQL多版本并发控制机制(MVCC)源码
Jun 23 MySQL
MySQL的安装与配置详细教程
Jun 26 MySQL
MySQL分区表实现按月份归类
Nov 01 MySQL
MySQL利用UNION连接2个查询排序失效详解
Nov 20 MySQL
SQL注入详解及防范方法
Dec 06 MySQL
MySQL之MyISAM存储引擎的非聚簇索引详解
Mar 03 MySQL
一文了解MYSQL三大范式和表约束
Apr 03 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微信开发之百度天气预报
2016/11/18 PHP
数组任意位置插入元素,删除特定元素的实例
2017/03/02 PHP
分享别人写的一个小型js框架
2007/08/13 Javascript
javascript中xml操作实现代码
2011/11/21 Javascript
jQuery scroll事件实现监控滚动条分页示例
2014/04/04 Javascript
jQuery中设置form表单中action值的实现方法
2016/05/25 Javascript
JavaScript提高网站性能优化的建议(二)
2016/07/24 Javascript
Laravel中常见的错误与解决方法小结
2016/08/30 Javascript
利用JavaScript缓存远程窃取Wi-Fi密码的思路详解
2018/11/05 Javascript
JavaScript中this用法学习笔记
2019/03/17 Javascript
从理论角度讨论JavaScript闭包
2019/04/03 Javascript
Vue+Vuex实现自动登录的知识点详解
2020/03/04 Javascript
Vue封装全局过滤器Filters的步骤
2020/09/16 Javascript
Vue中正确使用Element-UI组件的方法实例
2020/10/13 Javascript
Python实现邮件的批量发送的示例代码
2018/01/23 Python
Python之读取TXT文件的方法小结
2018/04/27 Python
Python中应该使用%还是format来格式化字符串
2018/09/25 Python
一看就懂得Python的math模块
2018/10/21 Python
python爬取淘宝商品销量信息
2018/11/16 Python
树莓派+摄像头实现对移动物体的检测
2019/06/22 Python
Python 如何优雅的将数字转化为时间格式的方法
2019/09/26 Python
Python Numpy 控制台完全输出ndarray的实现
2020/02/19 Python
python3 配置logging日志类的操作
2020/04/08 Python
使用HTML5和CSS3表单验证功能
2017/05/05 HTML / CSS
HTML5中外部浏览器唤起微信分享功能的代码
2020/09/15 HTML / CSS
Peter Alexander新西兰站:澳大利亚领先的睡衣设计师品牌
2016/12/10 全球购物
财务部岗位职责
2013/11/19 职场文书
会计专业应届生求职信
2013/11/24 职场文书
材料专业毕业生求职信
2014/02/26 职场文书
法律进学校实施方案
2014/03/15 职场文书
2014基层党员干部学习全国两会心得体会
2014/03/17 职场文书
三八红旗手先进事迹材料
2014/05/13 职场文书
贯彻落实“八项规定”思想汇报
2014/09/13 职场文书
2014年公务员退休工资改革方案
2014/10/01 职场文书
先进教师事迹材料
2014/12/16 职场文书
Javascript使用integrity属性进行安全验证
2021/11/07 Javascript