MySQL中的NOW()
函数是一个非常实用的日期和时间函数,它返回当前的日期和时间,这个函数在很多场景下都非常有用,比如记录数据的创建时间、更新时间等,本文将详细介绍NOW()
函数的用法和一些示例。
(图片来源网络,侵删)
1、基本用法
NOW()
函数不需要任何参数,直接调用即可,它会返回一个包含当前日期和时间的字符串,格式为YYYYMMDD HH:MM:SS
。
SELECT NOW();
执行上述SQL语句,可能会得到类似如下的结果:
20220831 14:30:00
2、在INSERT语句中使用
在插入数据时,可以使用NOW()
函数为日期时间类型的字段自动填充当前时间,假设有一个名为users
的表,其中有一个名为created_at
的字段,用于存储用户创建的时间,可以使用以下SQL语句插入一条新记录:
INSERT INTO users (username, created_at) VALUES ('张三', NOW());
这样,created_at
字段会自动填充为当前时间。
3、在UPDATE语句中使用
在更新数据时,也可以使用NOW()
函数来更新日期时间类型的字段,假设需要更新某个用户的最后登录时间,可以使用以下SQL语句:
UPDATE users SET last_login = NOW() WHERE username = '张三';
这样,last_login
字段会被更新为当前时间。
4、在查询中使用
在查询数据时,可以使用NOW()
函数来筛选出在某个时间段内的数据,假设需要查询最近一周内注册的用户,可以使用以下SQL语句:
SELECT * FROM users WHERE created_at >= DATE_SUB(NOW(), INTERVAL 7 DAY);
这里使用了DATE_SUB()
函数来计算一周前的日期,然后筛选出在这个日期之后创建的用户。
5、格式化输出
如果需要对NOW()
函数返回的时间进行格式化,可以使用DATE_FORMAT()
函数,假设需要返回当前时间的小时和分钟,可以使用以下SQL语句:
SELECT DATE_FORMAT(NOW(), '%H:%i') AS current_time;
这样,会返回类似如下的结果:
current_time 14:30
本文详细介绍了MySQL中NOW()
函数的基本用法、在INSERT和UPDATE语句中的应用,以及如何结合其他函数进行时间筛选和格式化输出,希望这些示例能帮助你更好地理解和使用NOW()
函数,在实际开发中,合理利用NOW()
函数可以为数据的创建和更新提供便利,提高开发效率。
评论(0)