MySQL 时间函数大全

SQL时间函数 是 MySQL 中的一组强大工具,帮助用户操作和管理日期、时间数据。下文将介绍几种常用的时间函数,帮助开发者高效处理时间相关的任务。

一、日期和时间的组成部分

MySQL 提供了丰富的函数来获取日期和时间的组成部分,例如:

  • DAYOFWEEK(date):返回日期 date 是星期几(1=星期天,2=星期一,……7=星期六)。
  • WEEKDAY(date):返回日期 date 是星期几(0=星期一,1=星期二,……6=星期天)。
  • DAYOFMONTH(date):返回 date 是一月中的第几日(在 1 到 31 范围内)。
  • DAYOFYEAR(date):返回 date 是一年中的第几日(在 1 到 366 范围内)。
  • MONTH(date):返回 date 中的月份数值。
  • DAYNAME(date):返回 date 是星期几(按英文名返回)。
  • MONTHNAME(date):返回 date 是几月(按英文名返回)。
  • QUARTER(date):返回 date 是一年的第几个季度。

二、日期和时间的加减运算

MySQL 还提供了方便的函数来对日期和时间进行加减操作,例如:

  • DATE_ADD(date, INTERVAL expr type):对日期时间进行加法运算。
  • DATE_SUB(date, INTERVAL expr type):对日期时间进行减法运算。
  • ADDDATE(date, INTERVAL expr type):加法运算(与 DATE_ADD() 同义)。
  • SUBDATE(date, INTERVAL expr type):减法运算(与 DATE_SUB() 同义)。

在这些函数中,expr 是表达式字符串,type 用来指定表达式的类型。

三、其他时间函数

MySQL 中还提供了其他多种时间函数,例如:

  • HOUR(time):返回 time 的小时数(范围 0 到 23)。
  • MINUTE(time):返回 time 的分钟数(范围 0 到 59)。
  • SECOND(time):返回 time 的秒数(范围 0 到 59)。
  • PERIOD_ADD(P, N):将 N 个月加到时期 P 并返回。
  • PERIOD_DIFF(P1, P2):返回两个时期之间的月份差异。