1. 日期和时间获取
-
NOW()
:返回当前的日期和时间。 -
CURDATE()
或CURRENT_DATE
:返回当前的日期。 -
CURTIME()
或CURRENT_TIME
:返回当前的时间。 -
SYSDATE()
:返回当前的日期和时间(与NOW()
类似,但在复制或存储函数中表现可能不同)。 -
UTC_DATE()
:返回UTC(协调世界时)的当前日期。 -
UTC_TIME()
:返回UTC的当前时间。 -
LOCALTIME()
或LOCALTIMESTAMP()
:返回当前时区的日期和时间(与NOW()
相同,但更明确地表示本地时间)。
2. 日期和时间计算
-
DATE_ADD(date, INTERVAL expr type)
或ADDDATE(date, INTERVAL expr type)
:在日期上加上一个时间间隔。 -
DATE_SUB(date, INTERVAL expr type)
或SUBDATE(date, INTERVAL expr type)
:从日期中减去一个时间间隔。 -
DATEDIFF(expr1, expr2)
:返回两个日期之间的天数差。 -
TIMEDIFF(expr1, expr2)
:返回两个时间之间的差值。 -
DATE_FORMAT(date, format)
:根据指定的格式返回日期/时间的格式化字符串。 -
DAYOFWEEK(date)
:返回日期是周几(1 = 周日,2 = 周一,...,7 = 周六)。 -
WEEKDAY(date)
:返回日期是周几(0 = 周一,1 = 周二,...,6 = 周日)。 -
MONTH(date)
:返回日期中的月份。 -
YEAR(date)
:返回日期中的年份。 -
HOUR(time)
:返回时间中的小时。 -
MINUTE(time)
:返回时间中的分钟。 -
SECOND(time)
:返回时间中的秒。
3. 日期和时间格式化
-
如上所述,
DATE_FORMAT(date, format)
是一个非常强大的函数,用于将日期和时间格式化为指定的字符串格式。
4. 日期和时间比较
虽然MySQL没有专门的“日期和时间比较函数”,但你可以使用比较运算符(如=
, <
, >
, <=
, >=
, <>
或 !=
)来比较日期和时间值。
其他相关函数
-
LAST_DAY(date)
:返回给定日期所在月份的最后一天。 -
DAYOFMONTH(date)
:返回日期中的日(月份中的第几天)。 -
DAYOFYEAR(date)
:返回日期是一年中的第几天。 -
QUARTER(date)
:返回日期是第几季度。 -
FROM_UNIXTIME(unix_timestamp[, format])
:将UNIX时间戳转换为日期和时间。 -
UNIX_TIMESTAMP([date])
:将日期或时间转换为UNIX时间戳。