博客
关于我
Mysql -------- data 函数
阅读量:799 次
发布时间:2023-02-10

本文共 2080 字,大约阅读时间需要 6 分钟。

MySQL中的日期函数是数据库开发中常用但又容易被忽视的功能,它们可以帮助我们精确处理日期和时间信息。本文将详细介绍MySQL中的日期函数及其操作方法。

1. now() 返回当前的日期和时间

now() 是一个强大的函数,它能够返回数据库服务器的当前日期和时间。它的返回格式依赖于数据库的时区设置,默认通常为'YYYY-MM-DD HH:MM:SS'。

示例:

SELECT now() AS now_time;

2. curdate() 返回当前的日期

curdate() 函数专门返回当前日期,不包含时间部分。它的结果格式与 now() 类似,但只包含日期信息。

示例:

SELECT curdate() AS today_date;

3. curtime() 返回当前的时间

curtime() 函数专门返回当前的时间,格式同上述函数,但只包含时间部分。

示例:

SELECT curtime() AS current_time;

4. date() 提取日期或日期/时间表达式的日期部分

date() 函数用于从包含日期和时间的表达式中提取仅日期部分。它非常有用,当我们只需要日期信息时,可以避免处理时间部分。

示例:

SELECT date(now()) AS date_only;

5. extract() 函数用于返回日期/时间的单独部分

extract() 函数可以提取日期或时间中的单独部分,例如年、月、日、小时、分钟等。它接受一个单位参数,可以是以下值:

  • microsecond
  • second
  • minute
  • hour
  • day
  • week
  • month
  • quarter
  • year
  • SECOND_MICROSECOND
  • MINUTE_MICROSECOND
  • MINUTE_SECOND
  • HOUR_MICROSECOND
  • HOUR_SECOND
  • HOUR_MINUTE
  • DAY_MICROSECOND
  • DAY_SECOND
  • DAY_MINUTE
  • DAY_HOUR
  • YEAR_MONTH

示例:

SELECT EXTRACT(YEAR_MONTH FROM NOW()) AS year_mon;
输出:2022-02

6. date_add() 给日期添加指定的时间间隔

date_add() 函数用于在日期上添加指定的时间间隔。它接受三个参数:日期表达式、间隔表达式和时间单位。时间单位与 extract() 函数中的单位一致。

示例:

SELECT NOW() AS now, DATE_ADD(NOW(), INTERVAL 1 HOUR) AS time_add;

7. date_sub() 从日期减去指定的时间间隔

date_sub() 函数与 date_add() 类似,但用于从日期中减去指定的时间间隔。

示例:

SELECT NOW() AS now, DATE_SUB(NOW(), INTERVAL 1 HOUR) AS time_sub;

8. datediff() 返回两个日期之间的天数

datediff() 函数用于计算两个日期之间的天数。它默认使用服务器的时区设置。

示例:

SELECT DATEDIFF('2020-02-03', '2020-02-02') AS diff_days;

9. date_format() 用不同的格式显示日期/时间

date_format() 函数允许我们将日期和时间按照指定的格式进行格式化。常见的格式字符包括:

  • %a:缩写星期名
  • %b:缩写月名
  • %c:月份的数值
  • %D:带有英文前缀的月中的天
  • %d:月份的天数(00-31)
  • %e:月份的天数(0-31)
  • %f:微秒
  • %H:24小时制的小时
  • %h:12小时制的小时
  • %i:分钟(00-59)
  • %j:年中的天数(001-366)
  • %k:24小时制的小时
  • %l:12小时制的小时
  • %M:月份的名称
  • %m:月份的数值(00-12)
  • %p:AM或PM
  • %r:12小时制的时间,包含秒
  • %S:秒(00-59)
  • %s:秒(00-59)
  • %T:24小时制的时间
  • %U:周(00-53),星期日为第一天
  • %u:周(00-53),星期一为第一天
  • %V:周(01-53),星期日为第一天,与 %X 使用
  • %v:周(01-53),星期一为第一天,与 %x 使用
  • %W:星期名
  • %w:周的天数(0=星期日,6=星期六)
  • %X:四位年份,其中星期日为第一天,与 %V 使用
  • %x:四位年份,其中星期一为第一天,与 %v 使用
  • %Y:四位年份
  • %y:两位年份

示例:

SELECT DATE_FORMAT(NOW(), '%b %d %Y %h:%i %p') AS formatted_date;
输出:Feb 15 2023 10:30 AM

总结

以上函数为MySQL中与日期和时间相关的重要函数提供了全面的介绍。通过合理运用这些函数,可以在数据库开发中更高效地处理日期和时间信息。如果需要更深入的学习,可以参考MySQL官方文档或相关技术博客。

转载地址:http://ulffk.baihongyu.com/

你可能感兴趣的文章
mysql -存储过程
查看>>
mysql /*! 50100 ... */ 条件编译
查看>>
mysql 1045解决方法
查看>>
mudbox卸载/完美解决安装失败/如何彻底卸载清除干净mudbox各种残留注册表和文件的方法...
查看>>
mysql 1264_关于mysql 出现 1264 Out of range value for column 错误的解决办法
查看>>
mysql 1593_Linux高可用(HA)之MySQL主从复制中出现1593错误码的低级错误
查看>>
mysql 5.6 修改端口_mysql5.6.24怎么修改端口号
查看>>
mui折叠面板点击事件跳转
查看>>
MySQL 8 公用表表达式(CTE)—— WITH关键字深入用法
查看>>
mysql 8 远程方位_mysql 8 远程连接注意事项
查看>>
MUI框架里的ajax的三种方法
查看>>
MySQL 8.0 恢复孤立文件每表ibd文件
查看>>
Mysql 8.0 新特性
查看>>
MultCloud – 支持数据互传的网盘管理
查看>>
MySQL 8.0.23中复制架构从节点自动故障转移
查看>>
MySQL 8.0开始Group by不再排序
查看>>
mysql ansi nulls_SET ANSI_NULLS ON SET QUOTED_IDENTIFIER ON 什么意思
查看>>
multi swiper bug solution
查看>>
MySQL Binlog 日志监听与 Spring 集成实战
查看>>
MySQL binlog三种模式
查看>>