MySQL datetime timestamp 以及如何自动更新,如何实现范围查询
warning:
这篇文章距离上次修改已过444天,其中的内容可能已经有所变动。
在MySQL中,DATETIME和TIMESTAMP都可以用来存储日期和时间信息,但它们之间有一些区别:
DATETIME的范围是'1000-01-01 00:00:00'到'9999-12-31 23:59:59'。TIMESTAMP的范围是'1970-01-01 00:00:01'UTC到'2038-01-19 03:14:07'UTC,且它与时区有关。
自动更新:
TIMESTAMP列可以自动设置或更新为当前的日期和时间。你可以通过设置DEFAULT CURRENT_TIMESTAMP和ON UPDATE CURRENT_TIMESTAMP属性来实现。
例如:
CREATE TABLE example (
id INT PRIMARY KEY,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);在这个例子中,created_at列在插入时会自动设置为当前的时间戳,而updated_at列在更新行时会自动更新为当前的时间戳。
范围查询:
- 使用
BETWEEN关键字可以进行范围查询。
例如:
SELECT * FROM example
WHERE created_at BETWEEN '2023-01-01 00:00:00' AND '2023-12-31 23:59:59';这个查询会返回example表中created_at列的值在2023年1月1日到2023年12月31日之间的所有行。
评论已关闭