一. 数值函数

  mysql 开发基础系列6 数值与日期函数 Mysql 第1张

1.  abs(x) 返回x的绝对值

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
SELECT ABS(-0.8),ABS(0.8);

mysql 开发基础系列6 数值与日期函数 Mysql 第2张

2.ceil(x) 返回大于x的最大整数

SELECT CEIL(-0.8),CEIL(0.8);

mysql 开发基础系列6 数值与日期函数 Mysql 第3张

3.floor(x) 返回小于x的最大整数

SELECT FLOOR(-0.8),FLOOR(0.8);

mysql 开发基础系列6 数值与日期函数 Mysql 第4张

4.mod(x,y) 返回x/y的模

SELECT MOD(15,10),MOD(1,11),MOD(NULL,10)

mysql 开发基础系列6 数值与日期函数 Mysql 第5张

5. rand() 返回0到1内的随机值

SELECT RAND(),RAND();

mysql 开发基础系列6 数值与日期函数 Mysql 第6张

    还可是指定范围的随机数,如0~100的值

SELECT CEIL(100*RAND());

mysql 开发基础系列6 数值与日期函数 Mysql 第7张

6.round(x,y) 返回参数x的四舍五入的有y位小数的值,如果不写y,默认为0

SELECT ROUND(1.1),ROUND(1.1,2),ROUND(1.0,3)

mysql 开发基础系列6 数值与日期函数 Mysql 第8张

7. truncate(x,y) 返回数字x截断为y位小数的结果,看看与round的区别

SELECT ROUND(1.235,2),TRUNCATE(1.235,2);

mysql 开发基础系列6 数值与日期函数 Mysql 第9张

二. 日期与时间函数

mysql 开发基础系列6 数值与日期函数 Mysql 第10张

1. curdate()  返回当前日期,只有年月日

SELECT CURDATE();

mysql 开发基础系列6 数值与日期函数 Mysql 第11张

2. curtime(): 返回当前时分秒

SELECT CURTime();

mysql 开发基础系列6 数值与日期函数 Mysql 第12张

3.now() 返回年月日时分秒

SELECT NOW();

mysql 开发基础系列6 数值与日期函数 Mysql 第13张

4. UNIX_TIMESTAMP(date) 返回unix 时间截

  SELECT UNIX_TIMESTAMP(NOW())

mysql 开发基础系列6 数值与日期函数 Mysql 第14张

5. FROM_UNIXTIME (unixtime) 和UNIX_TIMESTAMP互转

SELECT FROM_UNIXTIME(1530265708)

mysql 开发基础系列6 数值与日期函数 Mysql 第15张

6. week(date)和year(date),返回一年的第几周,各年份

SELECT WEEK(NOW()),YEAR(NOW());

mysql 开发基础系列6 数值与日期函数 Mysql 第16张

7.hour(time)和 minute(time) 返回小时和分钟

  SELECT HOUR(CURTIME()),MINUTE(CURTIME());

mysql 开发基础系列6 数值与日期函数 Mysql 第17张

8. monthname(date) 返回时间英文月份

 SELECT  MONTHNAME(NOW());

mysql 开发基础系列6 数值与日期函数 Mysql 第18张

9. date_format(date,fmt)按指定的格式显示日期

mysql 开发基础系列6 数值与日期函数 Mysql 第19张

mysql 开发基础系列6 数值与日期函数 Mysql 第20张

         下面的例子将当前时间显示为 "月,日,年" 格式

SELECT  DATE_FORMAT(NOW(),'%M,%D,%Y')

mysql 开发基础系列6 数值与日期函数 Mysql 第21张

 10. date_add(date,interval expr type)    返回与所给日期date相差interval时间段的日期

  mysql 开发基础系列6 数值与日期函数 Mysql 第22张

 

   下面例子第1列返回当前日期时间, 2列返回距当前日期31天后的日期时间,3列返回距当前日期一年两个月后的日期时间。 (也可以用负数表示后退的日期时间)

SELECT NOW() AS current,
    DATE_ADD(NOW(),INTERVAL 31 DAY) AS after31dyas,
    DATE_ADD(NOW(),INTERVAL '1_2' YEAR_MONTH)  AS after_oneyear_twomonth;

mysql 开发基础系列6 数值与日期函数 Mysql 第23张

11. datediff(date1,date2) 用来计算两个日期之间相差的天数

 SELECT DATEDIFF('2018-08-08',NOW())    

mysql 开发基础系列6 数值与日期函数 Mysql 第24张

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄