mongodb - MongoDB:如何查询 json 字符串?
问题描述
有一个 MongoDB 集合,其中填充了如下文档:
{
"_id" : ObjectId("5b7f83b591fae49715443590"),
"content" : "{\n\t\"email\":\"username@domain.com\",\n\t\"country_code\": \"US\"\n}"
}
如您所见"content"
,有一个 JSON 字符串
我能够使用以下方式解析字符串JSON.parse()
:
db.getCollection('my_collection').find({}).map(function(doc){ return {'_id':doc._id, 'content': JSON.parse(doc.content)}});
给我一个带有_id
和content
作为对象的对象数组。
有没有一种方法可以执行查询(过滤、聚合函数)content
而不需要从 获取数组map
?
解决方案
就像你说的对数据库而言content
是一个字符串。因此,您需要将整个集合保存在content
一个对象的位置,以便您能够过滤、聚合等...
推荐阅读
- ios - SwiftUI | 阻止 TextField 自动使用键盘向上移动
- c# - unity忽略条件中的部分代码
- docker - 未调用 Docker 容器内的 Web Api Endpoint
- laravel - Laravel 关系“有时”返回 null
- c - GSL 实际上是在使用 Atlas 吗?
- javascript - FunctionConstructor.prototype
- android - 更改 Switch 的背景颜色
- lightningchart - 创建chartXY对象后如何设置主题?
- javascript - 为什么这个基于承诺的代码返回未定义?
- java - 如何打印出正确的输出?