聊聊MySQL 中常用的日期相关函数

聊聊MySQL 中常用的日期相关函数

免费学习推荐:mysql视频教程

目录

第一部分:时间差函数 timestampdiff、datediff、timediff一、时间差函数:timestampdiff二、时间差函数:datediff三、时间差函数:timediff四、其他日期函数其他日期函数第二部分 日期、时间戳、字符串互相转换其他

第一部分:时间差函数 timestampdiff、datediff、timediff

一、时间差函数:timestampdiff

语法:timestampdiff(interval, datetime1,datetime2)
结果:返回(时间2-时间1)的时间差,结果单位由 interval 参数给出。

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

注意:MySQL 5.6之后才支持毫秒的记录和计算,如果是之前的版本,最好是在数据库除datetime类型之外的字段,再建立用于存储毫秒的int字段,然后自己进行转换计算。# 所有格式

SELECT TIMESTAMPDIFF(FRAC_SECOND,'2012-10-01','2013-01-13'); # 暂不支持SELECT TIMESTAMPDIFF(SECOND,'2012-10-01','2013-01-13'); # 8985600SELECT TIMESTAMPDIFF(MINUTE,'2012-10-01','2013-01-13'); # 149760SELECT TIMESTAMPDIFF(HOUR,'2012-10-01','2013-01-13'); # 2496SELECT TIMESTAMPDIFF(DAY,'2012-10-01','2013-01-13'); # 104SELECT TIMESTAMPDIFF(WEEK,'2012-10-01','2013-01-13'); # 14SELECT TIMESTAMPDIFF(MONTH,'2012-10-01','2013-01-13'); # 3SELECT TIMESTAMPDIFF(QUARTER,'2012-10-01','2013-01-13'); # 1SELECT TIMESTAMPDIFF(YEAR,'2012-10-01','2013-01-13'); # 0

登录后复制

二、时间差函数:datediff

语法:SELECT DATEDIFF(日期1, 日期2)
结果:日期1 – 日期2 的天数的差

SLECT DATEDIFF('2013-01-13','2012-10-01'); # 104

登录后复制

三、时间差函数:timediff

语法:timediff(time1,time2)
结果:返回 time1-time2 的差值

SELECT TIMEDIFF('2018-05-21 14:51:43','2018-05-19 12:54:43');#49:57:00

登录后复制

注意:该方法两个参数必须为日期格式

四、其他日期函数

now()函数返回的是当前时间的年月日时分秒curdate()函数返回的是年月日信息curtime()函数返回的是当前时间的时分秒信息对一个包含年月日时分秒日期格式化成年月日日期,可以使用DATE(time)函数

其他日期函数

SELECT NOW(); # 2018-05-21 14:41:00SELECT CURDATE(); # 2018-05-21SELECT CURTIME(); # 14:41:38SELECT DATE(NOW()); # 2018-05-21SELECT SYSDATE(); # 2018-05-21 14:47:11SELECT CURRENT_TIME(); # 14:51:30SELECT CURRENT_TIMESTAMP; # 2018-05-21 14:51:37SELECT CURRENT_TIMESTAMP(); # 2018-05-21 14:51:43

登录后复制

注意:now()与sysdate()类似,只不过now()在执行开始时就获取,而sysdate()可以在函数执行时动态获取。

第二部分 日期、时间戳、字符串互相转换

#时间日期转字符串  相当与Oracle中的to_char函数select date_format(now(), '%Y-%m-%d'); #结果:2017-02-27#时间转时间戳select unix_timestamp(now()); #结果:1488160428#字符串转时间select str_to_date('2017-02-27', '%Y-%m-%d %H'); #结果:2017-02-27 00:00:00select str_to_date('2017-10-16 15:30:28','%Y-%m-%d %H:%i:%s'); #结果 2017-10-16 15:30:28#注意 年是大写‘Y’,小时也必须是大写‘H’    (如果其他为大写,则得到结果为null)#字符串转时间戳select unix_timestamp('2017-02-27'); #结果:1488124800#时间戳转时间select from_unixtime(1488160428); #结果:2017-02-27 09:53:48#时间戳转字符串select from_unixtime(1488160428,'%Y-%m-%d %T'); #结果:2017-02-27 09:53:48 SELECT DATE_FORMAT(CURDATE(),'%Y-%m-%d %H:%i:%s'); -- 获取当天零点select curdate();                       --获取当前日期select last_day(curdate());                    --获取当月最后一天。select DATE_ADD(curdate(),interval -day(curdate())+1 day);   --获取本月第一天select date_add(curdate()-day(curdate())+1,interval 1 month); -- 获取下个月的第一天select DATEDIFF(date_add(curdate()-day(curdate())+1,interval 1 month ),DATE_ADD(curdate(),interval -day(curdate())+1 day)) from dual; --获取当前月的天数

登录后复制

其他

SELECT DAY('2021-2-17') -- 当前月的第几天(17)SELECT MONTH('2021-2-17') -- 当前为几月(2)

登录后复制

更多相关免费学习推荐:mysql教程(视频)

以上就是聊聊MySQL 中常用的日期相关函数的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/1734255.html

(0)
上一篇 2025年2月19日 21:03:39
下一篇 2025年2月19日 21:04:02

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • php如何原生查询mysql

    php原生查询mysql的操作是:1、创建一个php示例文件;2、连接数据库;3、检查链接是否成功;4、执行查询语句;5、处理查询结果;6、关闭数据库连接即可。 本教程操作系统:Windows10系统、php8.1.3版本、Dell G3电…

    2025年2月23日
    100
  • 怎么修改php和mysql端口

    通过修改PHP和MySQL的配置文件修改php和mysql端口。详细介绍:1、修改PHP端口,打开PHP配置文件php.ini,在php.ini文件中查找“; Listen for TCP/IP connections on port; h…

    2025年2月23日
    100
  • mysql在php显示乱码怎么解决

    mysql在php显示乱码可以通过设置数据库字符集、设置PHP页面字符集、设置MySQL数据库和表的字符集以及进行编码转换等方法来解决。详细介绍:1、设置数据库字符集,通过设置字符集,可以确保从数据库中获取的数据以正确的编码显示在网页上;2…

    2025年2月23日
    100
  • php操作mysql数据库的扩展有哪些

    PHP 提供多种 MySQL 扩展:MySQLi:推荐用于 PHP 5.3 及以上版本,提供面向对象接口和高性能。PDO:可访问多种数据库的通用抽象层, 提供一致的接口。MySQLdb:已弃用,已被 MySQLi 取代。选择扩展时,应考虑 …

    2025年2月23日
    100
  • 使用PHP开发web应用程序有哪些优势

    PHP在Web应用程序开发中的优势:1. 开源免费;2. 易于学习;3. 丰富的库和框架;4. 跨平台兼容性;5. 与数据库无缝集成;6. 高效性能;7. 庞大的社区支持;8. 广泛的行业应用。 PHP开发Web应用程序的优势 PHP作为一…

    2025年2月23日
    100
  • php制作地图数据库应该储存哪些属性

    PHP 地图数据库属性包括:几何属性:表示要素形状(geom)。非几何属性(元数据):唯一标识符(id)、名称(name)、描述(description)、类型(type)、其他属性(properties)、标签(tags)、可见性(vis…

    2025年2月23日
    100
  • 在使用php时需要用到哪些软件

    成功使用 PHP 所需软件:文本编辑器或集成开发环境(IDE)Web 服务器PHP 解释器数据库管理系统(DBMS) 使用 PHP 所需软件 PHP (超文本预处理语言) 是一种广泛用于 Web 开发的脚本语言。为了成功使用 PHP,您需要…

    2025年2月23日
    100
  • php程序员需要掌握的技能有哪些

    PHP 程序员必备技能:1. 核心 PHP 语言基础,包括语法、数据类型、控制流和函数;2. 面向对象编程;3. Web 开发:HTML、CSS、JavaScript、HTTP 协议、服务器端编程;4. 数据库:SQL 查询语言、DBMS、…

    2025年2月23日
    100
  • PHP高级工程师具备哪些技能

    PHP 高级工程师必备技能包括:精通 PHP 编程语言,包括其核心概念和语法。掌握流行的 PHP 框架和库。熟练数据库管理,包括关系型和非关系型数据库。擅长性能优化和云计算。具备沟通、团队合作、解决问题和批判性思维等软技能。持续关注职业发展…

    2025年2月23日
    100
  • php如何配置mysql

    为 PHP 配置 MySQL 需要按以下步骤操作:安装 MySQL 扩展。编辑 php.ini 配置文件,启用扩展。创建包含 MySQL 连接信息的凭证文件。在 PHP 脚本中使用 mysqli_connect() 函数连接到 MySQL。…

    2025年2月23日
    100

发表回复

登录后才能评论