mysql函数NOW()怎么用?

MySQL函数NOW()用于返回当前日期和时间。它可以用来记录数据的最后修改时间或创建时间等。 使用示例: INSERT INTO my_table (name, created_at) VALUES ('John', NOW()); 以上示例中,当向my_table表中插入一条数据时,我们可...

MySQL函数NOW()用于返回当前日期和时间。它可以用来记录数据的最后修改时间或创建时间等。

使用示例:

INSERT INTO my_table (name, created_at) VALUES ('John', NOW());

以上示例中,当向my_table表中插入一条数据时,我们可以使用NOW()函数生成当前时间,并将其保存到created_at字段中。这样就可以记录数据的创建时间。

另一个示例是,我们想将某个字段的值更新为当前时间,可以这样写:

UPDATE my_table SET updated_at = NOW() WHERE id = 1;

以上示例中,我们将my_table表的id为1的记录的updated_at字段更新为当前时间。这样就可以记录数据的最后修改时间。

需要注意的是,NOW()函数返回的时间是基于服务器上的时间。如果要根据不同时区返回不同的时间,可以使用其他函数,如CONVERT_TZ()。

完整示例:

CREATE TABLE my_table (
  id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(50) NOT NULL,
  created_at TIMESTAMP DEFAULT NOW(),
  updated_at TIMESTAMP DEFAULT NOW() ON UPDATE NOW()
);

INSERT INTO my_table (name) VALUES ('John');
INSERT INTO my_table (name) VALUES ('Jane');

UPDATE my_table SET updated_at = NOW() WHERE name = 'John';

以上示例中,我们创建了一个名为my_table的表,其中包含了一个id字段、一个name字段和两个时间戳字段:created_at和updated_at。我们还设置了这两个字段的默认值和更新值,使其在插入数据和更新数据时自动记录时间。然后我们向表中插入了两条数据,并将name为’John’的记录的updated_at字段更新为当前时间。

代码块:

 SQLCREATE TABLE my_table (
  id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(50) NOT NULL,
  created_at TIMESTAMP DEFAULT NOW(),
  updated_at TIMESTAMP DEFAULT NOW() ON UPDATE NOW()
);

INSERT INTO my_table (name) VALUES ('John');
INSERT INTO my_table (name) VALUES ('Jane');

UPDATE my_table SET updated_at = NOW() WHERE name = 'John';

本文标题为:mysql函数NOW()怎么用?