MySQL中的函数总结

  1. ABS:绝对值,例如:Select ABS(-100),结果为:100。

  2. ROUND:四舍五入(精确到后两位:先对数据乘100,再除100),例如:Select ROUND(3.1871*100)/100,结果为:3.1900。

  3. FLOOR:强制舍位到最近的整数,例如:Select FLOOR(9.9),结果为:9。

  4. CEIL:强制进位到最近的整数,例如:CEIL(3.1),结果为:4。

  5. LOG:对数函数,例如:SELECT LOG(8,2),结果为3。

  6. LN:对数函数,例如:SELECT LN(10),结果为:2.30258509。

  7. POWER:指数函数,例如:SELECT POWER(2,3),结果为:8。

  8. SQRT:开平方,例如:SQRT(9)。

  9. PI:圆周率,例如:PI()。

  10. SIN:三角函数,例如:SIN(1)。

  11. COS:三角函数,例如:COS(1).

  12. TAN:三角函数,例如:TAN(2).

  13. COT:三角函数,例如:COT(1)

  14. RADIANS:角度转换弧度,例如:RADIANS(30)。

  15. DEGREES:弧度转换角度,例如:DEGREES(1)。
    日期函数:

  16. Now():获取当前系统的日期和时间,格式为yyyy-MM-dd hh:mm:ss,例如:Now()。

  17. CURDATE()函数能获得当前系统日期,格式为yyyy-MM-dd。例如: CURDATE();

  18. CURTIME()函数能获得当前的系统时间,格式为hh:mm:ss。例如:CURTIME();

  19. DATE_FORMAT()函数用于格式日期,返回用户想要的日期格式。例如:DATE_FORMAT(日期,表达式);查询员工入职的年份:SELECT ename,DATE_FORMAT(hiredate,“%Y”) From t_emp;

占位符作用
%Y年份
%d日期
%W星期(名称)
%U本年第几周
%h小时(12)
%s
%T时间(24)
%m月份
%w星期(数字)0:代表周日
%j本年第几天
%H小时(24)
%r时间(12)
%i分钟

【例如】1、统计2022年上半年人数:

SELECT
	count(*)
FROM
	training_user
WHERE
	DATE_FORMAT(gmt_create ,"%Y") = 2022
and DATE_FORMAT(gmt_modified,"%m")<=6;

日期偏移计算

  1. DATE_ADD()函数可以实现日期的偏移计算,而且时间单位比较灵活。
 `DATE_ADD(日期,INTERVAL  偏移量 时间单位)`
 SELECT DATE_ADD(NOW(),INTERVAL 15 DAY)//从当前日期偏移15天
 SELECT DATE_ADD(NOW(),INTERVAL -300 MINUTE)//300分钟之前的日期
 SELECT DATE_ADD(DATE_ADD(NOW(),INTERVAL -3 MONTH), INTERVAL 3 DAY);//偏移3个月3天
 SELECT
DATE_FORMAT(
	DATE_ADD(
		DATE_ADD(NOW(), INTERVAL - 3 MONTH),
		INTERVAL 3 DAY
	),"%Y/%m/%d");//返回日期格式

计算日期之间差了多少天:DATEDIFF()函数

DATEDIFF(日期,日期);
SELECT DATEDIFF("2022-6-29","2022-5-29");//31天

字符函数

  1. LOWER:转换小写字符;例如:LOWER(enname);
  2. UPPER:转换大写字符,例如:UPPER(enname);
  3. LENGTH:字符数量;LENGTH(enname);
  4. CONCAT:连接字符串;例如:CONCAT(sal,“$”);
  5. INSTR:字符出现的位置,例如:INSERT(enname,“A”);
  6. INSERT:插入/替换字符;例如:INSERT(“你好”,1,0,“先生”);
  7. PEPLACE:替换字符,例如:PEPLACE(“你好先生”,“先生”,“女士”)
  8. SUBSTR:截取字符串;例如:SUBSTR(“你好世界”,1,2);1:代表截取开始的位置,2:代表结束的位置,得到结果为:“你好”。
  9. SUBSTRING:截取字符串,例如:SUBSTRING(“你好世界”,2,1);2:代表开始位置,1:代表往后截取一个字符,结果为:“好”
  10. LPAD:左填充字符串;例如:LPAD(“Hello”,10,“*”);
  11. RPAD:右填充字符串;例如:RPAD(“Hello”,10,“*”);
  12. TRIM:去除首尾空格;例如:TRIM(" 你好先生 ");
  13. 例如:
SELECT LPAD(SUBSTRING("12356789661",9,3),11,"*");//隐藏手机号
SELECT RPAD(SUBSTRING("李晓呐",1,1),LENGTH("李晓呐")/3,"*");//隐藏名字

条件函数
14. IFNULL(表达式,值)
15. IF(表达式,值1,值2)
条件语句(比if语句功能强大)
CASE
WHEN 表达式 THEN 值1
WHEN 表达式 THEN 值2
……
ELSE 值N
END

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值