浅谈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
MySQL update set 和 and的区别
May 08 MySQL
MySQL 隔离数据列和前缀索引的使用总结
May 14 MySQL
Mysql数据库值的添加、修改、删除及清空操作实例
Jun 20 MySQL
MySQL系列之十五 MySQL常用配置和性能压力测试
Jul 02 MySQL
使用ORM新增数据在Mysql中的操作步骤
Jul 26 MySQL
Mysql实现简易版搜索引擎的示例代码
Aug 30 MySQL
MySQL中datetime时间字段的四舍五入操作
Oct 05 MySQL
浅谈MySql整型索引和字符串索引失效或隐式转换问题
Nov 20 MySQL
MySQL 分区表中分区键为什么必须是主键的一部分
Mar 17 MySQL
MySQL外键约束(Foreign Key)案例详解
Jun 28 MySQL
jdbc中自带MySQL 连接池实践示例
Jul 23 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静态类
2006/11/25 PHP
PHP里的中文变量说明
2011/07/23 PHP
PHP SplObjectStorage使用实例
2015/05/12 PHP
typecho插件编写教程(六):调用接口
2015/05/28 PHP
PHP框架Laravel中实现supervisor执行异步进程的方法
2017/06/07 PHP
js中indexof的用法详细解析
2013/12/24 Javascript
js中reverse函数的用法详解
2013/12/26 Javascript
jQuery避免$符和其他JS库冲突的方法对比
2014/02/20 Javascript
JavaScript简单实现鼠标拖动选择功能
2014/03/06 Javascript
你可能不知道的JavaScript的new Function()方法
2014/04/17 Javascript
nodejs实现获取当前url地址及url各种参数值
2015/06/25 NodeJs
JS实现统计复选框选中个数并提示确定与取消的方法
2015/07/01 Javascript
Knockoutjs 学习系列(一)ko初体验
2016/06/07 Javascript
使用jQuery给input标签设置默认值
2016/06/20 Javascript
jQuery实现查找最近父节点的方法
2016/06/23 Javascript
jQuery插件echarts实现的多柱子柱状图效果示例【附demo源码下载】
2017/03/04 Javascript
jQuery Ajax 实现分页 kkpager插件实例代码
2017/08/10 jQuery
基于JavaScript实现淘宝商品广告效果
2017/08/10 Javascript
vue 集成 vis-network 实现网络拓扑图的方法
2019/08/07 Javascript
node实现爬虫的几种简易方式
2019/08/22 Javascript
Node.js API详解之 V8模块用法实例分析
2020/06/05 Javascript
vue+element获取el-table某行的下标,根据下标操作数组对象方式
2020/08/07 Javascript
tensorflow实现对图片的读取的示例代码
2018/02/12 Python
Django开发中复选框用法示例
2018/03/20 Python
scrapy-redis的安装部署步骤讲解
2019/02/27 Python
pycharm如何实现跨目录调用文件
2020/02/28 Python
canvas像素点操作之视频绿幕抠图
2018/09/11 HTML / CSS
Desigual美国官方网站:西班牙服装品牌
2019/03/29 全球购物
澳大利亚波希米亚风时尚品牌:Tree of Life
2019/09/15 全球购物
致800米运动员广播稿
2014/02/16 职场文书
《乞巧》教学反思
2014/02/27 职场文书
师德先进个人事迹材料
2014/12/19 职场文书
心灵点滴观后感
2015/06/02 职场文书
观后感的写法
2015/06/19 职场文书
入党自传范文2015
2015/06/26 职场文书
使用RedisTemplat实现简单的分布式锁
2021/11/20 Redis