在MongoDB中使用toString()将ObjectId转换为字符串。让我们创建一个包含文档的集合
> db.demo52.insertOne({"StudentName":"Chris"}); { "acknowledged" : true, "insertedId" : ObjectId("5e27129bcfb11e5c34d89910") }
在find方法的帮助下显示集合中的所有文档-
> db.demo52.find();
这将产生以下输出-
{ "_id" : ObjectId("5e27129bcfb11e5c34d89910"), "StudentName" : "Chris" }
以下是将ObjectId转换为String的查询-
> ObjectId("5e27129bcfb11e5c34d89910").toString(); ObjectId("5e27129bcfb11e5c34d89910")
现在可以检查ObjectId是否为字符串
> typeof ObjectId("5e27129bcfb11e5c34d89910").toString();
这将产生以下输出-
String
标题可能不太清楚,问题在这里 我正在执行此表单中的更新: 仅当没有具有相同用户ID的文档时才在数组中插入文档(解决方法是,唯一索引在数组中不起作用)。代码在mongo控制台上运行良好。从我的应用程序中,我使用以下内容: 如果作为“userid”,我使用的字符串不能是mongo ObjectId,那么这很好,但是如果我在示例中使用该字符串,则执行的查询如下所示(来自mongosniff): 该字符串
我使用了cakephp Mysql到mongodb查询组件,即将Mysql查询转换到mongodb中,但是当查询有多个括号时代码停止工作,我还尝试将http://www.querymongo.com/site上的查询转换为相同的问题,
问题内容: 我知道ObjectIds包含创建日期。有没有办法查询ObjectId的这一方面? 问题答案: 将时间戳弹出到ObjectId中将详细介绍基于嵌入在ObjectId中的日期的查询。 简要介绍一下JavaScript代码:
问题内容: 我需要将此查询从MySQL格式转换为SQLite。我正在尝试自己,但发现了一些困难。 在SQLite中,curdate()和interval函数不存在。 问题答案: 这是基本语法: 我忽略了该子句,因为这些日期是过去1000多个日期,因此他们无论如何都不会选择任何内容。
--------编辑-------------------------------------------- 我在我的服务器行为中发现了一些非常奇怪的东西。当我执行一个简单的findById调用时,我的image项是一个Objectid数组。但是当使用聚合时,ObjecIds变成了String。有人知道上面是什么吗?
问题内容: 我想将以下SQL查询转换为Elasticsearch之一。谁能帮上忙 我尝试了以下方法: 但不确定我是否做对了,因为它无法验证结果。似乎要在聚合内添加查询。 问题答案: 假设您使用Elasticsearch 2.x,则有可能在Elasticsearch中 具有 -semantics。我不知道2.0之前的可能性。 您可以使用新的Pipeline Aggregation Bucket Se