在 MongoDB 中为多个字段搜索多个值?


要在 MongoDB 中为多个字段搜索多个值,可以使用 $text 和 $search 运算符。让我们首先创建一个带文档的集合

>db.searchMultipleFieldsDemo.insertOne({"_id":100,"FirstSubject":"Java","SecondSubject":"MongoDB"});
{ "acknowledged" : true, "insertedId" : 100 }
>db.searchMultipleFieldsDemo.insertOne({"_id":101,"FirstSubject":"MongoDB","SecondSubject":"MySQL"});
{ "acknowledged" : true, "insertedId" : 101 }
>db.searchMultipleFieldsDemo.insertOne({"_id":102,"FirstSubject":"MySQL","SecondSubject":"Java"});
{ "acknowledged" : true, "insertedId" : 102 }

以下是使用 find() 方法显示集合中所有文档的查询

> db.searchMultipleFieldsDemo.find().pretty();

这将产生以下输出

{ "_id" : 100, "FirstSubject" : "Java", "SecondSubject" : "MongoDB" }
{ "_id" : 101, "FirstSubject" : "MongoDB", "SecondSubject" : "MySQL" }
{ "_id" : 102, "FirstSubject" : "MySQL", "SecondSubject" : "Java" }

以下是 MongoDB 为多个字段搜索多个值的查询

> db.searchMultipleFieldsDemo.find({"$text":{"$search":"Java MongoDB"}});

这将产生以下输出

{ "_id" : 102, "FirstSubject" : "MySQL", "SecondSubject" : "Java" }
{ "_id" : 100, "FirstSubject" : "Java", "SecondSubject" : "MongoDB" }
{ "_id" : 101, "FirstSubject" : "MongoDB", "SecondSubject" : "MySQL" }

更新时间:30-07-2019

581 次浏览量

开启您的职业生涯

完成课程获得认证

开始
广告
© . All rights reserved.