MySQL基础-数值函数(上)

112 阅读1分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第16天,点击查看活动详情

数值函数

  • 常见的数值函数如下:
函数功能
CEIL(x)向上取整
FLOOR(x)向下取整
MOD(x,y)返回x/y的模
RAND()返回0~1内的随机数
ROUND(x,y)求参数x的四舍五入的值,保留y位小数

ceil:向上取整

  • select ceil(1.1);
  • QQ截图20221016192101.png

floor:向下取整

  • select floor(1.9);
  • QQ截图20221016192431.png

mod:取模

  • select mod(7,4);
  • 解释如下:7%3=2.....1
  • QQ截图20221016192200.png

rand:获取随机数

  • select rand();

round:四舍五入

  • select round(2.344,2);
  • QQ截图20221016194336.png

案例:

通过数据库的函数,生成一个六位数的随机验证码。 思路: 获取随机数可以通过rand()函数,但是获取出来的随机数是在0-1之间的,所以可以在其基础 上乘以1000000,然后舍弃小数部分,如果长度不足6位,补0

  • select lpad(round(read()*1000000,0),6,0);
  • QQ截图20221016194850.png

日期函数

  • 常见的日期函数如下:
函数功能
CURDATE()返回当前日期
CURTIME()返回当前时间
NOW()返回当前日期和时间
YEAR(date)获取指定date的年份
MONTH(date)获取指定date的月份
DAY(date)获取指定date的日期
DATE_ADD(date, INTERVAL exprtype)返回一个日期/时间值加上一个时间间隔expr后的时间值
DATEDIFF(date1,date2)返回起始时间date1 和 结束时间date2之间的天数

演示如下:

curdate:当前日期

  • select curdate();
  • QQ截图20221016195456.png