首页 >web前端 >js教程 >## 您可以根据嵌入日期查询 MongoDB ObjectId 吗?

## 您可以根据嵌入日期查询 MongoDB ObjectId 吗?

Barbara Streisand
Barbara Streisand原创
2024-10-25 11:48:021067浏览

## Can You Query MongoDB ObjectIds Based on Their Embedded Dates?

按日期查询 MongoDB ObjectId

问题:

是否可以从以下位置检索文档基于嵌入在其 ObjectId 中的日期的 MongoDB 集合?

答案:

是的,可以借助嵌入的时间戳按日期查询 MongoDB ObjectId。

在 JavaScript 中,您可以使用 ObjectId() 函数构造具有特定时间戳的 ObjectId。例如,以下代码创建一个嵌入表示 1980 年 5 月 25 日午夜的时间戳的 ObjectId:

<code class="javascript">var timestamp = new Date('1980/05/25');
var hexSeconds = Math.floor(timestamp/1000).toString(16);
var constructedObjectId = ObjectId(hexSeconds + "0000000000000000");</code>

要查询在此时间戳之后创建的所有文档,可以使用 $gt(大于)运算符:

<code class="javascript">db.mycollection.find({ _id: { $gt: constructedObjectId } });</code>

此查询将返回 ObjectId 时间戳大于 1980 年 5 月 25 日午夜的所有文档,根据创建日期有效过滤文档。

以上是## 您可以根据嵌入日期查询 MongoDB ObjectId 吗?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn