川石教育
全国咨询热线:136-9172-9932
  1. 首页 > 资讯与干货 > 常见问题

软件测试Mysql数据库常见函数——日期时间函数(三)

作者:川石学院 日期:2021-04-22 16:21:04 点击数:

  前两期我们分别学习了软件测试Mysql数据库中常见的字符函数和数值函数,那么,本期我们一起来学习Mysql数据库中常见的日期时间函数。有不懂的地方可以咨询在线老师,一对一解答。

软件测试Mysql数据库常见函数——日期时间函数(三)(图1)

  ADDDATE(d,n):计算起始日期 d 加上 n 天的日期

  实例:

  SELECT ADDDATE("2017-06-15", INTERVAL 10 DAY);

  返回结果:2017-06-25

  ADDTIME(t,n) :时间 t 加上 n 秒的时间

  实例:

  SELECT ADDTIME('2011-11-11 11:11:11', 5);

  返回结果:2011-11-11 11:11:16 (秒)

  CURDATE():返回当前日期

  实例:

  SELECT CURDATE();

  返回结果: 2018-09-19

  CURRENT_DATE():返回当前日期

  实例:

  SELECT CURRENT_DATE();

  返回结果: 2018-09-19

  CURRENT_TIME:返回当前时间

  实例:

  SELECT CURRENT_TIME();

  返回结果: 19:59:02

  CURRENT_TIMESTAMP():返回当前日期和时间

  实例:

  SELECT CURRENT_TIMESTAMP();

  返回结果: 2018-09-19 20:57:43

  CURTIME():返回当前时间

  实例:

  SELECT CURTIME();

  返回结果: 19:59:02

  DATE():从日期或日期时间表达式中提取日期值

  实例:

  SELECT DATE("2017-06-15");

  返回结果: 2017-06-15

  DATEDIFF(d1,d2):计算日期 d1返回结果:d2 之间相隔的天数

  实例:

  SELECT DATEDIFF('2001-01-01','2001-02-02');

  返回结果: -32

  DATE_ADD(d,INTERVAL expr type) :计算起始日期 d 加上一个时间段后的日期

  实例:

  SELECT ADDDATE('2011-11-11 11:11:11',1);

  返回结果: 2011-11-12 11:11:11 (默认是天)

  SELECT ADDDATE('2011-11-11 11:11:11', INTERVAL 5 MINUTE);

  返回结果: 2011-11-11 11:16:11 (TYPE的取值与上面那个列出来的函数类似)

  DATE_FORMAT(d,f):按表达式 f的要求显示日期 d

  实例:

  SELECT DATE_FORMAT('2011-11-11 11:11:11','%Y-%m-%d %r');

  返回结果: 2011-11-11 11:11:11 AM

  DATE_SUB(date,INTERVAL expr type):函数从日期减去指定的时间间隔。

  Orders 表中 OrderDate 字段减去 2 天:

  实例:

  SELECT OrderId,DATE_SUB(OrderDate,INTERVAL 2 DAY) AS OrderPayDate

  FROM Orders;

  DAY(d):返回日期值 d 的日期部分

  实例:

  SELECT DAY("2017-06-15");

  返回结果: 15

  DAYNAME(d) :返回日期 d 是星期几,如 Monday,Tuesday

  实例:

  SELECT DAYNAME('2011-11-11 11:11:11');

  返回结果:Friday

  DAYOFMONTH(d) :计算日期 d 是本月的第几天

  实例:

  SELECT DAYOFMONTH('2011-11-11 11:11:11');

  返回结果:11

  DAYOFWEEK(d):日期 d 今天是星期几,1 星期日,2 星期一,以此类推

  实例:

  SELECT DAYOFWEEK('2011-11-11 11:11:11');

  返回结果:6

  DAYOFYEAR(d):计算日期 d 是本年的第几天

  实例:

  SELECT DAYOFYEAR('2011-11-11 11:11:11');

  返回结果:315

  FROM_DAYS(n):计算从 0000 年 1 月 1 日开始 n 天后的日期

  实例:

  SELECT FROM_DAYS(1111);

  返回结果: 0003-01-16

  HOUR(t) :返回 t 中的小时值

  实例:

  SELECT HOUR('1:2:3');

  返回结果: 1

  LAST_DAY(d) :返回给给定日期的那一月份的最后一天

  实例:

  SELECT LAST_DAY("2017-06-20");

  返回结果: 2017-06-30

  LOCALTIME() :返回当前日期和时间

  实例:

  SELECT LOCALTIME();

  返回结果: 2018-09-19 20:57:43

  LOCALTIMESTAMP():返回当前日期和时间

  实例:

  SELECT LOCALTIMESTAMP();

  返回结果: 2018-09-19 20:57:43

  MAKEDATE(year, day-of-year):基于给定参数年份 year 和所在年中的天数序号 day-of-year 返回一个日期

  实例:

  SELECT MAKEDATE(2017, 3);

  返回结果: 2017-01-03

  MAKETIME(hour, minute, second):组合时间,参数分别为小时、分钟、秒

  实例:

  SELECT MAKETIME(11, 35, 4);

  返回结果: 11:35:04

  MICROSECOND(date):返回日期参数所对应的微秒数

  实例:

  SELECT MICROSECOND("2017-06-20 09:34:00.000023");

  返回结果: 23

  MINUTE(t):返回 t 中的分钟值

  实例:

  SELECT MINUTE('1:2:3');;

  返回结果: 2

  MONTHNAME(d):返回日期当中的月份名称,如 November

  实例:

  SELECT MONTHNAME('2011-11-11 11:11:11');

  返回结果: November

  MONTH(d):返回日期d中的月份值,1 到 12

  实例:

  SELECT MONTH('2011-11-11 11:11:11');

  返回结果:11

  NOW():返回当前日期和时间

  实例:

  SELECT NOW();

  返回结果: 2018-09-19 20:57:43

  PERIOD_ADD(period, number):为 年-月 组合日期添加一个时段

  实例:

  SELECT PERIOD_ADD(201703, 5);

  返回结果: 201708

  PERIOD_DIFF(period1, period2):返回两个时段之间的月份差值

  实例:

  SELECT PERIOD_DIFF(201710, 201703);

  返回结果: 7

  QUARTER(d):返回日期d是第几季节,返回 1 到 4

  实例:

  SELECT QUARTER('2011-11-11 11:11:11');

  返回结果: 4

  SECOND(t):返回 t 中的秒钟值

  实例:

  SELECT SECOND('1:2:3');

  返回结果: 3

  SEC_TO_TIME(s):将以秒为单位的时间 s 转换为时分秒的格式

  实例:

  SELECT SEC_TO_TIME(4320);

  返回结果: 01:12:00

  STR_TO_DATE(string, format_mask):将字符串转变为日期

  实例:

  SELECT STR_TO_DATE("August 10 2017", "%M %d %Y");

  返回结果: 2017-08-10

  SUBDATE(d,n):日期 d 减去 n 天后的日期

  实例:

  SELECT SUBDATE('2011-11-11 11:11:11', 1);

  返回结果:2011-11-10 11:11:11 (默认是天)

  SUBTIME(t,n):时间 t 减去 n 秒的时间

  实例:

  SELECT SUBTIME('2011-11-11 11:11:11', 5);

  返回结果:2011-11-11 11:11:06 (秒)

  SYSDATE():返回当前日期和时间

  实例:

  SELECT SYSDATE();

  返回结果: 2018-09-19 20:57:43

  TIME(expression):提取传入表达式的时间部分

  实例:

  SELECT TIME("19:30:10");

  返回结果: 19:30:10

  TIME_FORMAT(t,f):按表达式 f 的要求显示时间 t

  实例:

  SELECT TIME_FORMAT('11:11:11','%r');

  返回结果:11:11:11 AM

  TIME_TO_SEC(t):将时间 t 转换为秒

  实例:

  SELECT TIME_TO_SEC('1:12:00');

  返回结果: 4320

  TIMEDIFF(time1, time2):计算时间差值

  实例:

  SELECT TIMEDIFF("13:10:11", "13:10:10");

  返回结果: 00:00:01

  TIMESTAMP(expression, interval):单个参数时,函数返回日期或日期时间表达式;有2个参数时,将参数加和

  实例:

  SELECT TIMESTAMP("2017-07-23", "13:10:11");

  返回结果: 2017-07-23 13:10:11

  TO_DAYS(d):计算日期 d 距离 0000 年 1 月 1 日的天数

  实例:

  SELECT TO_DAYS('0001-01-01 01:01:01');

  返回结果: 366

  WEEK(d) :计算日期 d 是本年的第几个星期,范围是 0 到 53

  实例:

  SELECT WEEK('2011-11-11 11:11:11');

  返回结果: 45

  WEEKDAY(d) :日期 d 是星期几,0 表示星期一,1 表示星期二

  实例:

  SELECT WEEKDAY("2017-06-15");

  返回结果: 3

  WEEKOFYEAR(d) :计算日期 d 是本年的第几个星期,范围是 0 到 53

  实例:

  SELECT WEEKOFYEAR('2011-11-11 11:11:11');

  返回结果: 45

  YEAR(d):返回年份

  实例:

  SELECT YEAR("2017-06-15");

  返回结果: 2017

  YEARWEEK(date, mode):返回年份及第几周(0到53),mode 中 0 表示周天,1表示周一,以此类推

  实例:

  SELECT YEARWEEK("2017-06-15");

  返回结果: 201724

  学到这里我们Mysql数据库常见函数就告一段落了,更多Mysql数据库知识等你来学习,我们下期见哦。



相关文章
  • 亚马逊运营成功转行软件测试,薪资13K表示很满意!2021-04-22 16:21:04
  • 西安川石的兰朋友喊你来当他的学弟学妹啦!2021-04-22 16:21:04
  • 国外的月亮也不一定比国内测试猿的年薪美~2021-04-22 16:21:04
  • 建筑工程专业朱同学成功转行为软件测试人!2021-04-22 16:21:04
  • 财务管理专业转行软件测试月薪甩会计几条街!2021-04-22 16:21:04
  • 只有技术沉淀才能成功上岸,深圳就业薪资13K!2021-04-22 16:21:04
  • 薪资11K!实现自我价值,从掌握一门IT技术开始...2021-04-22 16:21:04
  • 文科生转行软件测试照样拿下高薪15K!2021-04-22 16:21:04
  • 恭喜罗同学喜提19.5K,成功入行软件测试!2021-04-22 16:21:04
  • 毕业1年,迷茫的他最终选择转行软件测试2021-04-22 16:21:04