什么是CURDATE函数
在MySQL中,CURDATE()函数用于返回当前日期,格式为“YYYY-MM-DD”。CURDATE()函数不需要任何参数,因为它只是返回当前的日期。
SELECT CURDATE();
执行上述代码,即可查询出当前日期。
注意:CURDATE()函数返回的是MySQL服务器的当前日期,并不是计算机客户端的当前日期。
如何使用CURDATE函数获取当前日期
使用CURDATE()函数获取当前日期非常简单,只需要在查询语句中调用CURDATE()函数即可。
SELECT CURDATE();
执行上述代码,即可获取当前日期。
获取指定日期的数据
使用CURDATE函数获取当前日期前一天的数据
有时候需要获取当前日期前一天的数据,可以使用CURDATE()函数和DATE_SUB()函数结合使用。
SELECT * FROM 表名 WHERE 日期字段 = DATE_SUB(CURDATE(), INTERVAL 1 DAY);
上面的代码中,DATE_SUB(CURDATE(), INTERVAL 1 DAY)表示当前日期减去1天,即获取昨天的日期。如果需要获取前天的数据,只需要将1改为2即可。
使用CURDATE函数获取当前星期的数据
有时候需要获取当前星期的数据,可以使用CURDATE()函数和DAYOFWEEK()函数结合使用。
SELECT * FROM 表名 WHERE DAYOFWEEK(日期字段) = DAYOFWEEK(CURDATE());
上面的代码中,DAYOFWEEK(日期字段)表示指定日期是星期几,DAYOFWEEK(CURDATE())表示当前日期是星期几,两者相等就表示查询的数据是当前星期的数据。
使用CURDATE函数获取当前月份的数据
有时候需要获取当前月份的数据,可以使用CURDATE()函数和MONTH()函数结合使用。
SELECT * FROM 表名 WHERE MONTH(日期字段) = MONTH(CURDATE());
上面的代码中,MONTH(日期字段)表示指定日期是几月份,MONTH(CURDATE())表示当前日期是几月份,两者相等就表示查询的数据是当前月份的数据。
关于时间格式化
如果需要获取更详细的时间信息,可以使用DATE_FORMAT()函数对日期进行格式化。DATE_FORMAT()函数的第一个参数是日期字段名或日期函数,第二个参数是日期格式化字符串。
SELECT DATE_FORMAT(日期字段, '格式字符串') FROM 表名;
例如,要获取当前日期的年份,可以执行以下代码:
SELECT DATE_FORMAT(CURDATE(), '%Y');
上面的代码中,%Y表示年份。
总结
本文介绍了如何使用CURDATE()函数获取当前日期,以及如何获取指定日期的数据,包括前一天、当前星期和当前月份的数据,并介绍了如何使用DATE_FORMAT()函数对日期进行格式化。在实际应用中,CURDATE()函数和DATE_FORMAT()函数是十分常用的,熟练掌握后可以大大提高开发效率。