博客
关于我
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 select, from ,join ,on ,where groupby,having ,order by limit的执行顺序和书写顺序
查看>>
MySQL Server 5.5安装记录
查看>>
mysql server has gone away
查看>>
mysql skip-grant-tables_MySQL root用户忘记密码怎么办?修改密码方法:skip-grant-tables
查看>>
mysql slave 停了_slave 停止。求解决方法
查看>>
MySQL SQL 优化指南:主键、ORDER BY、GROUP BY 和 UPDATE 优化详解
查看>>
MYSQL sql语句针对数据记录时间范围查询的效率对比
查看>>
mysql sum 没返回,如果没有找到任何值,我如何在MySQL中获得SUM函数以返回'0'?
查看>>
mysql sysbench测试安装及命令
查看>>
mysql Timestamp时间隔了8小时
查看>>
Mysql tinyint(1)与tinyint(4)的区别
查看>>
MySQL Troubleshoting:Waiting on query cache mutex
查看>>
mysql union orderby 无效
查看>>
mysql v$session_Oracle 进程查看v$session
查看>>
mysql where中如何判断不为空
查看>>
mysql where中如何判断不为空
查看>>
MySQL Workbench 使用手册:从入门到精通
查看>>
MySQL Workbench 数据库建模详解:从设计到实践
查看>>
MySQL Workbench 数据建模全解析:从基础到实践
查看>>
mysql workbench6.3.5_MySQL Workbench
查看>>