MySQL日期函数

– 获取当前日期函数和获取当前时间函数
select CURDATE(),CURRENT_DATE(),CURRENT_DATE() + 0;
– 结果:2019-06-20 2019-06-20 20190620

select CURTIME(),CURRENT_TIME(),CURRENT_TIMESTAMP() ,CURRENT_TIMESTAMP()+0
– 结果:12:58:56 12:58:56 2019-06-20 12:58:56 20190620130204

– 获取当前日期和时间的函数
select CURRENT_TIMESTAMP(),LOCALTIME(),LOCALTIMESTAMP(),NOW(),SYSDATE()
– 结果:2019-06-20 13:04:22 2019-06-20 13:04:22 2019-06-20 13:04:22 2019-06-20 13:04:22 2019-06-20 13:04:22
select CURRENT_TIMESTAMP() + 0,LOCALTIME() + 0,LOCALTIMESTAMP() + 0,NOW() + 0,SYSDATE() + 0
– 结果:20190620130549 20190620130549 20190620130549 20190620130549 20190620130549

– 时间戳函数UNIX
– 时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。通俗的讲, 时间戳是一份能够表示一份数据在一个特定时间点已经存在的完整的可验证的数据。 它的提出主要是为用户提供一份电子证据, 以证明用户的某些数据的产生时间。 在实际应用上, 它可以使用在包括电子商务、 金融活动的各个方面, 尤其可以用来支撑公开密钥基础设施的 “不可否认” 服务。
select UNIX_TIMESTAMP(), UNIX_TIMESTAMP(CURDATE()), UNIX_TIMESTAMP(CURTIME()),UNIX_TIMESTAMP(NOW() );
– 结果:1561007339 1560960000 0 1561007339
select FROM_UNIXTIME(1561007339),FROM_UNIXTIME(1561007339),FROM_UNIXTIME(0),FROM_UNIXTIME(1561007339)
– 结果:2019-06-20 13:08:59 2019-06-20 13:08:59 1970-01-01 08:00:00 2019-06-20 13:08:59

– 返回UTC日期和返回UTC时间协调世界时,又称世界统一时间、世界标准时间、国际协调时间。由于英文(CUT)和法文(TUC)的缩写不同,作为妥协,简称UTC。
select UTC_TIME(),UTC_DATE(),UTC_TIMESTAMP();
– 结果:05:20:10 2019-06-20 2019-06-20 05:20:10

– 获取月份函数
select MONTH(NOW()),MONTHNAME(NOW())
– 结果:6 June

– 获取星期函数
select DAYNAME(NOW()),DAYOFWEEK(NOW()),WEEKDAY(NOW()),NOW()
– 结果:Thursday 5 3 2019-06-20 13:57:37
– DAYOFWEEK 0表示周日,WEEKDAY 0表示周一

– 获取星期数的函数
– WEEK(date,mode) 第一个参数日期,第二个0或1,不给默认为0,0表示一周第一天为周日,1表示一周第一天为星期一。
– WEEKOFYEAR()计算某天位于一年中的第几周。
select WEEK(‘2019-06-20’),WEEKOFYEAR(‘2019-06-20’)
– 结果:24 25

– 获取天数的函数DAYOFWEEK一周中的第几天范围0-6,DAYOFMONTH一个月中的第几天范围1-31,DAYOFYEAR一年中的第几天范围1-366
select DAYOFWEEK(‘2019-06-20’),DAYOFMONTH(‘2019-06-20’),DAYOFYEAR(‘2019-06-20’);
– 结果:5 20 171

– 获取年份,季度,小时,分钟和秒钟的函数
select YEAR(‘2019-06-20’),QUARTER(‘2019-06-20’),HOUR(‘14:29:06’),MINUTE(‘14:29:06’),SECOND(‘14:29:06’),HOUR(‘14:29:06’)
– 结果:2019 2 14 29 6 14

– 获取日期指定值的函数EXTRACT(unit FROM date)
select EXTRACT(year from ‘2019-06-20 12:58:56’),EXTRACT(MONTH from ‘2019-06-20 12:58:56’),EXTRACT(DAY from ‘2019-06-20 12:58:56’)
– 结果: 2019 6 20
select EXTRACT(YEAR_MONTH from ‘2019-06-20 12:58:56’),EXTRACT(DAY_HOUR from ‘2019-06-20 12:58:56’),EXTRACT(DAY_MINUTE from ‘2019-06-20 12:58:56’)
– 结果: 201906 2012 201258

– 时间和秒钟的转换的函数
select TIME_TO_SEC(‘00:00:56’),TIME_TO_SEC(‘00:01:56’),TIME_TO_SEC(‘01:00:56’)
– 结果:56 116 3656
select SEC_TO_TIME(56),SEC_TO_TIME(116),SEC_TO_TIME(3656)
– 结果:00:00:56 00:01:56 01:00:56

– 计算日期和时间的函数
select DATE_ADD(‘2019-06-20 11:59:59’,INTERVAL 1 second),ADDDATE(‘2019-06-20 11:59:59’,INTERVAL 1 second),DATE_SUB(‘2019-06-20 11:59:59’,INTERVAL 1 second);
select SUBDATE(‘2019-06-20 11:59:59’,INTERVAL 1 second),ADDTIME(‘2019-06-20 11:59:59’,‘01:01:01’),SUBTIME(‘2019-06-20 11:59:59’,‘01:01:01’);
– 结果1:2019-06-20 12:00:00 2019-06-20 12:00:00 2019-06-20 11:59:58
– 结果2:2019-06-20 11:59:58 2019-06-20 13:01:00 2019-06-20 10:58:58

– 计算两个日期间隔天数
select DATEDIFF(‘2019-06-20 11:59:59’,‘2019-06-21 01:59:59’)
– 结果: -1
时间格式化
select DATE_FORMAT(‘2019-06-20 13:59:59’,’%Y-%M-%D %I:%i:%s’)
– 结果:2019-June-20th 01:59:59

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值