SQLite 时间戳:获取精确时间(含微秒)及查询方法
在 SQLite 中,使用'datetime(CURRENT_TIMESTAMP, 'localtime')' 设置列的默认值将获取当前本地时间戳,包括年月日时分秒。默认情况下,SQLite 的时间戳没有包含微秒。如果你需要包含微秒,可以使用'strftime('%Y-%m-%d %H:%M:%f', 'now', 'localtime')' 来获取当前精确的时间。
以下是如何编写公式来创建一个包含微秒的默认时间戳列:
CREATE TABLE mytable (
id INTEGER PRIMARY KEY,
created_at TEXT DEFAULT (strftime('%Y-%m-%d %H:%M:%f', 'now', 'localtime'))
);
在上述示例中,'created_at' 列将包含当前的本地时间戳,包括微秒。
要查询并显示精确的时间,你可以使用'strftime' 函数来格式化输出:
SELECT id, strftime('%Y-%m-%d %H:%M:%f', created_at) AS exact_time
FROM mytable;
这将显示'exact_time' 列,其中包含了精确的时间,包括微秒。
请注意,SQLite 的精确时间戳可能会受到操作系统的限制,因此在某些情况下可能无法提供微秒级的精度。
原文地址: https://www.cveoy.top/t/topic/lACw 著作权归作者所有。请勿转载和采集!