High Sierra Chat.db 时间戳
High Sierra Chat.db Timestamp
我要去 chat.db 获取有关应用程序的消息 (Mac OS)。
在我的 SQL SELECT 中使用 Sierra 之前,我使用 datetime(date, 'unixepoch', 'localtime')
来转换时间戳。
现在在 High Sierra 上它不起作用,我什么也得不到。
时间戳似乎变了……更多这样的数字:531651854330806016
有人知道如何转换吗?
根据 https://apple.stackexchange.com/questions/114168/dates-format-in-messages-chat-db
,日期字段现在似乎是纳秒级字段
所以你可以试试这个:
datetime(date/1000000000, 'unixepoch', 'localtime')
在 Mac OS Mojave 你需要添加 + 978307200:
datetime(date/1000000000 + 978307200,'unixepoch','localtime')
iMessage最后一条消息时间:2018-11-2306:44
SELECT datetime(date/1000000000 + 978307200,'unixepoch','localtime') FROM message ORDER BY ROWID desc limit 1;
结果:
2018-11-23 06:44:01
我要去 chat.db 获取有关应用程序的消息 (Mac OS)。
在我的 SQL SELECT 中使用 Sierra 之前,我使用 datetime(date, 'unixepoch', 'localtime')
来转换时间戳。
现在在 High Sierra 上它不起作用,我什么也得不到。
时间戳似乎变了……更多这样的数字:531651854330806016
有人知道如何转换吗?
根据 https://apple.stackexchange.com/questions/114168/dates-format-in-messages-chat-db
,日期字段现在似乎是纳秒级字段所以你可以试试这个:
datetime(date/1000000000, 'unixepoch', 'localtime')
在 Mac OS Mojave 你需要添加 + 978307200:
datetime(date/1000000000 + 978307200,'unixepoch','localtime')
iMessage最后一条消息时间:2018-11-2306:44
SELECT datetime(date/1000000000 + 978307200,'unixepoch','localtime') FROM message ORDER BY ROWID desc limit 1;
结果:
2018-11-23 06:44:01