MySQL 的时间函数挺实用的,尤其是日志、统计这些场景,少不了和日期时间打交道。curdate()和curtime()这类函数,基本上每个写 SQL 的人都绕不开。
curdate()的作用就是返回今天的日期,格式是YYYY-MM-DD,比如用来查询今天注册的用户,配合where语句就挺顺手。
curtime()或者current_time(),就比较适合你要抓某个时间点的求,比如限制接口调用频率什么的;now()这类函数则是日期+时间都有,算是比较万能的了。
语法也不复杂,像这样:
SELECT curdate();
SELECT curtime();
SELECT now();
对了,如果你还分不清now()和current_date()有什么差别,可以看看这篇:NOW()和 CURRENT_DATE()在 MySQL 中的区别,讲得还挺细。
小建议:写 SQL 的时候别老靠硬编码日期,多用这些函数,灵活还好维护。如果你写的是定时任务或自动化脚本,记得统一时区,MySQL 默认用的是服务器的。