博客
关于我
mysql以下日期函数正确的_mysql 日期函数
阅读量:793 次
发布时间:2023-02-11

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

MySQL 日期 函数 与 日期 转换 格式化 函数

MySQL 作为一款开源的免费关系型数据库,拥有庞大的用户基础。本文将列出常用日期函数与日期转换格式化函数,帮助开发者更高效地处理日期数据。


1. 抽离调度中心服务

  • 目的:将调度中心服务从数据库中抽离,实现服务的独立性。
  • 实施步骤
  • 使用JDBC连接MySQL数据库。
  • 调用AbstractConnectionFactory获取数据库连接。
  • 使用SchedulerFactory获取调度中心服务。
  • 启动调度中心服务,确保其运行状态正常。

2. 抽离消息队列服务

  • 目的:将消息队列服务从数据库中抽离,提升系统性能。
  • 实施步骤
  • 使用Kafka或RabbitMQ作为消息队列服务。
  • 配置数据库连接,确保消息监听服务能正常运行。
  • 使用MessageProducer发送消息,MessageConsumer接收消息。
  • 验证消息是否正确传输,及时处理异常情况。

MySQL 日期 函数

3. 日期 函数

1. DAYOFWEEK(date)

  • 语法
    SELECT DAYOFWEEK('2016-01-16')
  • 示例
    SELECT DAYOFWEEK('2016-01-16 00:00:00')
  • 返回值:1 到 7,星期天=1,星期一=2,... 星期六=7。

2. WEEKDAY(date)

  • 语法
    SELECT WEEKDAY('2016-01-16')
  • 示例
    SELECT WEEKDAY('2016-01-16 00:00:00')
  • 返回值:0 到 6,0=星期一,1=星期二,... 5=星期六。

3. DAYOFMONTH(date)

  • 语法
    SELECT DAYOFMONTH('2016-01-16')
  • 示例
    SELECT DAYOFMONTH('2016-01-16 00:00:00')
  • 返回值:1 到 31,表示当月的第几天。

4. DAYOFYEAR(date)

  • 语法
    SELECT DAYOFYEAR('2016-03-31')
  • 示例
    SELECT DAYOFYEAR('2016-03-31 00:00:00')
  • 返回值:1 到 365,表示当年的第几天。

5. MONTH(date)

  • 语法
    SELECT MONTH('2016-01-16')
  • 示例
    SELECT MONTH('2016-01-16 00:00:00')
  • 返回值:1 到 12,表示当年的第几月。

6. DAYNAME(date)

  • 语法
    SELECT DAYNAME('2016-01-16')
  • 示例
    SELECT DAYNAME('2016-01-16 00:00:00')
  • 返回值:英文星期几名称,如 Saturday

7. MONTHNAME(date)

  • 语法
    SELECT MONTHNAME('2016-01-16')
  • 示例
    SELECT MONTHNAME('2016-01-16 00:00:00')
  • 返回值:英文月份名称,如 January

8. QUARTER(date)

  • 语法
    SELECT QUARTER('2016-01-16')
  • 示例
    SELECT QUARTER('2016-01-16 00:00:00')
  • 返回值:1 到 4,表示当年的第几个季度。

9. WEEK(date, index)

  • 语法
    SELECT WEEK('2016-01-03', 1)
  • 示例
    SELECT WEEK('2016-01-03')
  • 返回值:默认为 1 到 53,表示一年当中的第几周(默认周日为第一天)。

时间 函数

10. HOUR(time)

  • 语法
    SELECT HOUR('11:22:33')
  • 示例
    SELECT HOUR('2016-01-16 11:22:33')
  • 返回值:0 到 23,表示小时部分。

11. MINUTE(time)

  • 语法
    SELECT MINUTE('11:22:33')
  • 示例
    SELECT MINUTE('2016-01-16 11:44:33')
  • 返回值:0 到 59,表示分钟部分。

12. SECOND(time)

  • 语法
    SELECT SECOND('11:22:33')
  • 示例
    SELECT SECOND('2016-01-16 11:44:22')
  • 返回值:0 到 59,表示秒部分。

日期 转换 函数

13. PERIOD_ADD(month, add)

  • 语法
    SELECT PERIOD_ADD(1601, 2)
  • 示例
    SELECT PERIOD_ADD(191602, 3)
  • 返回值:yyyyMM 格式的日期,支持正负数。

14. PERIOD_DIFF(monthStart, monthEnd)

  • 语法
    SELECT PERIOD_DIFF(1602, 9002)
  • 示例
    SELECT PERIOD_DIFF(191602, 191607)
  • 返回值:两个月之间的天数。

日期 加减 函数

15. DATE_ADD(date, INTERVAL)

  • 语法
    SELECT DATE_ADD('2015-12-31 23:59:59', INTERVAL 1 SECOND)
  • 示例
    SELECT DATE_ADD('2016-01-01 00:00:00', INTERVAL '-1 10' DAY_HOUR)
  • 返回值:与date相加或相减的结果。

获取 当前 日期 和 时间

16. CURDATE()

  • 语法
    SELECT CURDATE()
  • 返回值:当前数据库服务器的日期。

17. CURRENT_DATE()

  • 语法
    SELECT CURRENT_DATE()
  • 返回值:与CURDATE()相同。

时间 转换 函数

18. UNIX_TIMESTAMP(date)

  • 语法
    SELECT UNIX_TIMESTAMP('2016-01-16')
  • 示例
    SELECT UNIX_TIMESTAMP('2016-01-16 23:59:59')
  • 返回值:对应的Unix时间戳。

日期 格式化 函数

19. DATE_FORMAT(date, format)

  • 语法
    SELECT DATE_FORMAT('2016-01-16 22:23:00','%W %M %Y')
  • 示例
    SELECT DATE_FORMAT('2016-01-16 22:23:00','%D %y %a %d %m %b %j')
  • 返回值:根据格式字符串格式化后的日期字符串。

获取 系统 当前 日期 和 时间

20. NOW()

  • 语法
    SELECT NOW()
  • 返回值:当前数据库服务器的日期和时间。

时间戳 转换 函数

21. FROM_UNIXTIME(unix_timestamp, format)

  • 语法
    SELECT FROM_UNIXTIME(1452959999, '%Y-%m-%d %H:%i:%s')
  • 示例
    SELECT FROM_UNIXTIME(1452959999)
  • 返回值:对应的日期和时间。

22. SEC_TO_TIME(seconds)

  • 语法
    SELECT SEC_TO_TIME(2378)
  • 返回值:将秒数转换为时间格式,如 00:39:38

23. TIME_TO_SEC(time)

  • 语法
    SELECT TIME_TO_SEC('22:23:00')
  • 返回值:将时间转换为秒数。

日期 和 时间 操作

24. ADDTIME(time, times)

  • 语法
    SELECT ADDTIME('2015-12-31 23:59:59', '01:01:01')
  • 返回值:将times加到time上。

时区 转换

25. CONVERT_TZ(date, from_tz, to_tz)

  • 语法
    SELECT CONVERT_TZ('2004-01-01 12:00:00', '+00:00', '+10:00')
  • 返回值:将date从from_tz转换为to_tz时区。

字符 转日期

26. STR_TO_DATE(date, format)

  • 语法
    SELECT STR_TO_DATE('2015-01-01', '%Y-%m-%d')
  • 返回值:将字符串转换为日期格式。

MySQL 中 常用 时间 格式 转换 函数

27. from_unixtime(timestamp, format)

  • 语法
    SELECT from_unixtime(14290450779, '%M %d %Y')
  • 格式示例
    • %M:月份的英文名字(如 January)。
    • %d:月份中的天数(如 15)。
    • %Y:四位数年份(如 2023)。

通过以上函数,开发者可以高效地处理日期和时间数据,完成各种日期计算和格式转换任务。

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

你可能感兴趣的文章
Mysql5.7版本单机版my.cnf配置文件
查看>>
mysql5.7的安装和Navicat的安装
查看>>
mysql5.7示例数据库_Linux MySQL5.7多实例数据库配置
查看>>
Mysql8 数据库安装及主从配置 | Spring Cloud 2
查看>>
mysql8 配置文件配置group 问题 sql语句group不能使用报错解决 mysql8.X版本的my.cnf配置文件 my.cnf文件 能够使用的my.cnf配置文件
查看>>
MySQL8.0.29启动报错Different lower_case_table_names settings for server (‘0‘) and data dictionary (‘1‘)
查看>>
MYSQL8.0以上忘记root密码
查看>>
Mysql8.0以上重置初始密码的方法
查看>>
mysql8.0新特性-自增变量的持久化
查看>>
Mysql8.0注意url变更写法
查看>>
Mysql8.0的特性
查看>>
MySQL8修改密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
查看>>
MySQL8修改密码的方法
查看>>
Mysql8在Centos上安装后忘记root密码如何重新设置
查看>>
Mysql8在Windows上离线安装时忘记root密码
查看>>
MySQL8找不到my.ini配置文件以及报sql_mode=only_full_group_by解决方案
查看>>
mysql8的安装与卸载
查看>>
MySQL8,体验不一样的安装方式!
查看>>
MySQL: Host '127.0.0.1' is not allowed to connect to this MySQL server
查看>>
Mysql: 对换(替换)两条记录的同一个字段值
查看>>