当前位置:首页 > 技术分析 > 正文内容

MySQL-日期时间类型比较、互转_mysql日期类型转换

ruisui883个月前 (02-10)技术分析17

【原理】日期、时间类型比较

比较的是时间戳,即long型


【原理】日期、时间类型和字符串比较

当涉及日期类型、时间类型和字符串类型比较时,会先将字符串转换成日期、时间类型,然后进行比较;

例如: date_col < "2020-09-01" ,date_col是date类型,在比较时,会先将"2020-09-01"转换成date类型,然后再比较


【常用日期和时间处理函数】

AddDate():增加一个日期(天、周等)

AddTime():增加一个是时间(时、分等)

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

CurDate():返回当前日期

CurTime():返回当前时间

Date():返回日期时间的日期部分

DateDiff():计算两个日期之差

-语法: datediff(string enddate, string startdate)。返回结束日期减去开始日期的天数

Date_Add():高度灵活的日期运算函数

Date_Sub(): 返回两个日期之间的间隔

-语法: date_sub (string startdate, int days)。 返回开始日期startdate减少days天后的日期。

Date_Format():返回一个格式化的日期或时间串

DayOfWeek():对于一个日期,返回对应的星期几,显示的一周是从周日开始周六结束,其中周日为1,周六为7

WeekDay(): 对于一个日期,返回对应的星期几,显示的一周是从周一开始周日结束,其中周一为0,周日为6

Time():返回一个日期时间的时间部分

Year():返回一个日期的年份部分

Month():返回一个日期的月份部分

Day():返回一个日期的天数部分

Hour():返回一个时间的小时部分

Minute():返回一个时间的分钟部分

Second():返回一个时间的秒数部分


【日期函数转换】

  1. UNIX时间戳转日期函数: (时间戳->日期)

from_unixtime
语法: from_unixtime(bigint unixtime[, string format])。转化UNIX时间戳(从1970-01-01 00:00:00 UTC到指定时间的秒数)到当前时区的时间格式

2. 获取当前UNIX时间戳函数:(当前时间戳)

unix_timestamp

语法: unix_timestamp()。获得当前时区的UNIX时间戳

3. 日期转UNIX时间戳函数:(日期->时间戳)

unix_timestamp
语法: unix_timestamp(string date)。转换格式为"yyyy-MM-dd HH:mm:ss"的日期到UNIX时间戳。如果转化失败,则返回0。

4.
指定格式日期转UNIX时间戳函数:(指定日期格式化->时间戳)

unix_timestamp

语法: unix_timestamp(string date, string pattern)。转换pattern格式的日期到UNIX时间戳。如果转化失败,则返回0。


【日期格式化】

DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据


【日期、时间戳、字符串互转】

涉及函数:

date_format(date,format)

unix_timestamp()

str_to_date(str,format)

from_unixtime(unix_timestamp,format)

1) 时间->字符串

date_format(now(0,"%Y-%m-%d")

2) 时间->时间戳

unix_timestamp(now())

3) 字符串-> 时间

str_to_date("2016-01-02","%Y-%m-%d %T")

4) 字符串-> 时间戳

unix_timestamp("2020-08-01")

5) 时间戳-> 时间

from_unixtime(1592755199)

6) 时间戳-> 字符串

from_unixtime(1592755199,"%Y-%m-%d")


【时间差函数】-timestampdiff、timediff、datediff

1.timestampdiff

语法:timestampdiff(interval, startDateTime,endDateTime)

结果:返回(endDateTime-startDateTime)的时间差,结果单位由interval参数给出。

interval 参数:

  • frac_second 毫秒(低版本不支持,用second,再除于1000)
  • second 秒
  • minute 分钟
  • hour 小时
  • day 天
  • week 周
  • month 月
  • quarter 季度
  • year 年

2. timediff

语法:timediff( Date1, Date2)

结果:返回DAY天数,Date1-Date2 的天数值,结果单位为day

3. datediff

语法:timediff(time1,time2)

结果:返回两个时间相减得到的差值,time1-time2,结果单位为Time类型


【案例-常用日期和时间处理函数】

select ADDDATE(NOW(),INTERVAL 1 DAY)

select ADDTIME(NOW(),"10:10:10")

select Now()

select CURDATE()

select CurTime()

select CURRENT_DATE()

select CURRENT_TIME()

select CURRENT_TIMESTAMP()

select DATE(now())

select DATEDIFF("2020-08-01","2020-08-20")

select DATE_ADD(NOW(),INTERVAL 1 DAY)

select DATE_FORMAT(NOW(),"%Y-%m-%d"),DATE_FORMAT(NOW(),"%y-%M-%D %T")

select DAYOFWEEK("2020-09-21"),WEEKDAY("2020-09-21")

select TIME(now())

select YEAR(now())

select month(now())

select DAY(now())

select Hour(now())

select Minute(now())

select second(now())

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/1861.html

标签: timestamp转换
分享给朋友:

“MySQL-日期时间类型比较、互转_mysql日期类型转换” 的相关文章

厅监控结算中心加强高速公路联网收费系统运行管理

厅监控结算中心加强高速公路联网收费系统运行管理,一是严格PSAM卡管理要求,加强跟踪各营运公司PSAM卡使用情况,切实做到PSAM卡专人保管,定期核查,做好联网收费系统基础安全工作。二是督促各营运公司加强3G备份链路管理,保障数据应急通道的畅通,确保车道数据正常传输。三是落实标识站建设工作,督促各营...

Java教程:gitlab-使用入门

1 导读本教程主要讲解了GitLab在项目的环境搭建和基本的使用,可以帮助大家在企业中能够自主搭建GitLab服务,并且可以GitLab中的组、权限、项目自主操作GitLab简介GitLab环境搭建GitLab基本使用(组、权限、用户、项目)2 GitLab简介GitLab是整个DevOps生命周期...

祸害阿里云宕机3小时的IO HANG究竟是什么?

本文来自微信公号“CSDN”(ID:CSDNnews),作者 | 王知无, 责编| 郭 芮。2019年3月3日凌晨,微博炸锅,有网友反映说阿里云疑似出现宕机,华北很多互联网公司受到暴击伤害,APP、网站全部瘫痪,我自己的朋友圈和微信群里也有好友反馈,刚刚从被窝被叫起来去修Bug,结果发现服务器登不上...

30 个纯 HTML5 实现的游戏

浏览器和 JavaScript 的功能逐年不断的变强变大。曾几何时,任何类型的游戏都需要Flash。但随着 HTML5 发展,HTML5 + WebGL 游戏式就慢慢占领着这个舞台。以下是30款流行的游戏,它们可以在所有现代浏览器中运行,并且只使用web技术构建。1. HexGL地址:http://...

「干货」FPGA设计中深度约束技巧及调试经验总结

今天跟大家分享的内容很重要,也是我们调试FPGA经验的总结。随着FPGA对时序和性能的要求越来越高,高频率、大位宽的设计越来越多。在调试这些FPGA样机时,需要从写代码时就要小心谨慎,否则写出来的代码可能无法满足时序要求。另外,最近跟网友聊天时,有谈到公众号寿命的问题,我觉得网络交换FPGA公众号应...

佳能 EOS R8 深度评测

佳能 EOS R8 的定位是入门级全画幅无反光镜可换镜头相机。尽管在产品阵容中处于这一位置,R8 仍然是一个强大的相机,配备了先进的 R6 II 同款成像传感器、快速处理器和令人难以置信的自动对焦系统,体积小、重量轻、价格低。这款相机是发烧友、旅行者、家庭以及任何想要全画幅传感器相机的人的绝佳选择。...