在 MongoDB 中,您可以使用 getTimestamp()
函数从 ObjectId 检索日期。如何使用 SQL 从 MongoDB ObjectId 检索日期(例如,在这样的 ObjectId 存储在 MySQL 数据库中的情况下)?
示例输入:
507c7f79bcf86cd7994f6c0e
想要的输出:
2012-10-15T21:26:17Z
最佳答案
这可以在 MySQL 中实现如下(假设 objectId
是一个字符串):
SELECT FROM_UNIXTIME(
CAST(CONV(SUBSTR(objectId, 1, 8), 16, 10) AS UNSIGNED)
) FROM table
它的工作原理如下:SUBSTR(objectId, 1, 8)
取十六进制 objectId
字符串中的前 8 个字符 CONV(..., 16, 10)
将十六进制数转换为十进制数并作为字符串返回(代表 UNIX 时间戳) CAST (...) AS UNSIGNED
将时间戳字符串转换为无符号整数 FROM_UNIXTIME(...)
将时间戳整数转换为日期 请注意,默认情况下,显示的日期将基于您系统的时区设置。
关于sql - 如何使用 SQL 从 MongoDB ObjectId 中检索日期,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22454804/