MongoDB 用什么查询可以在 FirstName 和 LastName 的字段组合中找到数据?
对于组合,使用 $concat,并使用 $eq 检查相等性。让我们使用文档创建一个集合 −
> db.demo502.insertOne({"FirstName":"John","LastName":"Smith"});{
"acknowledged" : true,
"insertedId" : ObjectId("5e875534987b6e0e9d18f56d")
}
> db.demo502.insertOne({"FirstName":"David","LastName":"Miller"});{
"acknowledged" : true,
"insertedId" : ObjectId("5e87553e987b6e0e9d18f56e")
}
> db.demo502.insertOne({"FirstName":"John","LastName":"Doe"});{
"acknowledged" : true,
"insertedId" : ObjectId("5e875543987b6e0e9d18f56f")
}使用 find() 方法从集合中显示所有文档 −
> db.demo502.find();
这将产生以下输出 −
{ "_id" : ObjectId("5e875534987b6e0e9d18f56d"), "FirstName" : "John", "LastName" : "Smith"
}
{ "_id" : ObjectId("5e87553e987b6e0e9d18f56e"), "FirstName" : "David", "LastName" : "Miller"
}
{ "_id" : ObjectId("5e875543987b6e0e9d18f56f"), "FirstName" : "John", "LastName" : "Doe" }以下查询用于查找字段组合 −
> db.demo502.aggregate(
... [
... { "$redact": {
... "$cond": [
... { "$eq": [
... { "$concat": [ "$FirstName", " ", "$LastName" ] },
... "John Doe"
... ]},
... "$$KEEP",
... "$$PRUNE"
... ]
... }}
... ]
... )这将产生以下输出 −
{ "_id" : ObjectId("5e875543987b6e0e9d18f56f"), "FirstName" : "John", "LastName" : "Doe" }
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP