SQL NOW() 函数


SQL NOW() 函数是一种日期和时间函数,用于返回当前系统日期和时间。它包括年份、月份、日期、小时、分钟和秒钟部分。

语法: SELECT NOW();

返回结果: 2021-08-07 22:23:23

使用NOW()函数非常常见,因为它可以在MySQL服务器中生成当前日期和时间。它广泛用于记录事件的时间和日期,为文件和数据添加时间戳以及执行其他日期和时间相关任务。

NOW()函数的一个重要特点是它返回日期和时间以 UTC(协调世界时)格式。因此,如果你需要将NOW()函数的返回转换为另一种时区的日期和时间格式,你可以使用CONVERT_TZ()函数。

语法: SELECT CONVERT_TZ(NOW(),’+00:00’,’+08:00’);

其中,’+00:00’表示UTC,可以替换为你所在时区的值(以UTC偏移量表示),’+08:00’表示中国的东八区,可以根据需要替换为所需时区的值。此函数将当前UTC时间转换为中国时间。

NOW()函数的一个重要用途是记录数据的修改时间。在创建表时,可以添加一个名为“updated_at”的列,它将在每次更新时自动设置为NOW()返回的当前日期和时间。

示例: CREATE TABLE users ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), email VARCHAR(255), updated_at TIMESTAMP DEFAULT NOW() ON UPDATE NOW() );

表“users”包含三列:id、name和email以及一个特殊的updated_at列。updated_at列定义为TIMESTAMP数据类型,并具有默认值NOW(),以便在插入行时设置当前日期和时间。ON UPDATE NOW()设置此列在每次更新该行时自动设置为当前日期和时间。

以上是SQL NOW()函数的使用方法和示例,可以帮助你更好地了解 如何使用此函数.