Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Cập nhật cột MySQL với timestamp UNIX hiện tại (UNIX_TIMESTAMP)

Hàm UNIX_TIMESTAMP() trả về giây từ epoch (1970-01-01 UTC). Dùng trong UPDATE để ghi timestamp hiện tại vào cột INT/BIGINT.

Ví dụ minh họa

Tạo bảng cột DueTime INT:

mysql> CREATE TABLE DemoTable1894 (Id INT AUTO_INCREMENT PRIMARY KEY, DueTime INT);
mysql> INSERT INTO DemoTable1894 VALUES(),(),(); -- DueTime = NULL

Cập nhật tất cả hàng với timestamp hiện tại:

mysql> UPDATE DemoTable1894 SET DueTime = UNIX_TIMESTAMP(NOW());

Kết quả (cùng giá trị do cùng giây thực thi):

+----+------------+
| Id | DueTime    |
+----+------------+
|  1 | 1576042722 |
|  2 | 1576042722 |
|  3 | 1576042722 |
+----+------------+

Ứng dụng: Lưu log thời gian, cache expiry, so sánh hiệu suất. MySQL 8.0.28+ hỗ trợ UNIX_TIMESTAMP() với đối số DATETIME có múi giờ.