新闻动态
新闻动态
NEWS INFORMATION
当前位置:   首页/数据库 /浅谈MySQL函数

浅谈MySQL函数

发布日期:2022-02-06 13:52 | 文章来源:源码之家

主要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函数内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!

海外服务器租用

版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。

实时开通

自选配置、实时开通

免备案

全球线路精选!

全天候客户服务

7x24全年不间断在线

专属顾问服务

1对1客户咨询顾问

在线
客服

在线客服:7*24小时在线

客服
热线

400-630-3752
7*24小时客服服务热线

关注
微信

关注官方微信
顶部