MongoDB
 Computer >> コンピューター >  >> プログラミング >> MongoDB

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" }

  1. フィールド値で「@email」のような文字列を検索するMongoDBクエリ

    MongoDB find()を使用して電子メール文字列を検索します。ドキュメントを使用してコレクションを作成しましょう- > db.demo727.insertOne({UserId:"[email protected]"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5eab375f43417811278f5898") } > db.demo727.insertOne({UserId:"

  2. 大文字と小文字を区別しない検索用のMongoDB$regex演算子iまたはI

    このためには、大文字と小文字を区別しない(i)を使用する必要があります。ドキュメントを使用してコレクションを作成しましょう- > db.demo759.insertOne({SubjectName:"MySQL"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5eb02ba95637cd592b2a4ae7") } > db.demo759.insertOne({SubjectName:&qu