MongoDB查询仅过滤内容中包含“工作”一词的日志
要过滤包含单词“work”的日志,请aggregate()与$filter一起使用。首先让我们创建一个包含文档的集合-
> db.demo383.insertOne(
... {
... "ServerName":"Jboss",
... "ServerLogs": [
... {
... "status":"Working"
... },
... {
... "status":"Stop"
... },
... {
... "status":"Worked"
... }
... ]
... }
... );
{
"acknowledged" : true,
"insertedId" : ObjectId("5e5b635422064be7ab44e7f1")
}在find()方法的帮助下显示集合中的所有文档-
> db.demo383.find().pretty();
这将产生以下输出-
{
"_id" : ObjectId("5e5b635422064be7ab44e7f1"),
"ServerName" : "Jboss",
"ServerLogs" : [
{
"status" : "Working"
},
{
"status" : "Stop"
},
{
"status" : "Worked"
}
]
}以下是要过滤的查询-
> db.demo383.aggregate([
... { "$addFields": {
... "ServerLogs": {
... "$filter": {
... "input": "$ServerLogs",
... "cond": {
... "$ne": [
... { "$indexOfBytes": [
... { "$toUpper": "$$this.status" },
... { "$toUpper": "work" }
... ]},
... -1
... ]
... }
... }
... }
... }}
... ])这将产生以下输出-
{
"_id" : ObjectId("5e5b635422064be7ab44e7f1"), "ServerName" : "Jboss", "ServerLogs" : [
{ "status" : "Working" }, { "status" : "Worked" }
]
}热门推荐
10 财运虎年祝福语简短语
11 单亲爸爸春节祝福语简短
12 狗狗上厕所训练
13 植物种植祝福语简短
14 翻译考试祝福语朋友简短
15 个人周年庆简短祝福语
16 狗狗怎么训练
17 分别祝福语简短搞笑英文
18 生日广州男生祝福语简短