SQL 语句中对时间的操作主要包括以下几种:
-
提取时间元素
YEAR(date_column): 提取年份MONTH(date_column): 提取月份DAY(date_column): 提取日HOUR(time_column): 提取小时MINUTE(time_column): 提取分钟SECOND(time_column): 提取秒
-
时间计算
DATE_ADD(date, INTERVAL expr unit): 对日期进行加减运算DATEDIFF(date1, date2): 计算两个日期之间的天数差TIMEDIFF(time1, time2): 计算两个时间之间的差值TIMESTAMPDIFF(unit, datetime1, datetime2): 计算两个时间戳之间的差值
-
时间格式转换
DATE_FORMAT(date, format): 将日期格式化为字符串TIME_FORMAT(time, format): 将时间格式化为字符串STR_TO_DATE(str, format): 将字符串转换为日期
-
时间比较
date1 < date2: 比较两个日期大小time1 < time2: 比较两个时间大小datetime1 < datetime2: 比较两个时间戳大小
-
时间范围查询
WHERE date_column BETWEEN '2023-01-01' AND '2023-12-31': 查询指定日期范围内的记录WHERE time_column >= '09:00:00' AND time_column < '18:00:00': 查询指定时间范围内的记录
-
当前时间获取
CURDATE(): 获取当前日期CURTIME(): 获取当前时间NOW(): 获取当前日期和时间