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

MongoDB $ inに正規表現を設定しますか?


ドキュメントを使用してコレクションを作成しましょう-

> db.demo675.insertOne({
... "ListOfNames":["John","Chris","David"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea3f5b404263e90dac943ef")
}
> db.demo675.insertOne({ "ListOfNames":["Bob","Johnson","Sam"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea3f5c804263e90dac943f0")
}
> db.demo675.insertOne({ "ListOfNames":["Jace","Sam"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea3f5d304263e90dac943f1")
}

find()メソッドを使用してコレクションからすべてのドキュメントを表示する-

> db.demo675.find();

これにより、次の出力が生成されます-

{ "_id" : ObjectId("5ea3f5b404263e90dac943ef"), "ListOfNames" : [ "John", "Chris", "David" ] }
{ "_id" : ObjectId("5ea3f5c804263e90dac943f0"), "ListOfNames" : [ "Bob", "Johnson", "Sam" ] }
{ "_id" : ObjectId("5ea3f5d304263e90dac943f1"), "ListOfNames" : [ "Jace", "Sam" ] }

以下は、正規表現と配列を使用してクエリするクエリです-

> db.demo675.find({"ListOfNames": {$in:[/John/,/J/]}});

これにより、次の出力が生成されます-

{ "_id" : ObjectId("5ea3f5b404263e90dac943ef"), "ListOfNames" : [ "John", "Chris", "David" ] }
{ "_id" : ObjectId("5ea3f5c804263e90dac943f0"), "ListOfNames" : [ "Bob", "Johnson", "Sam" ] }
{ "_id" : ObjectId("5ea3f5d304263e90dac943f1"), "ListOfNames" : [ "Jace", "Sam" ] }

  1. MongoDBネストドキュメントに条件を設定しますか?

    特定の値よりも大きい値を持つドキュメントを見つける必要があるとしましょう。このためには、ネストされたドキュメントでドット表記を使用し、$gtで条件を設定します。 例を見て、ドキュメントを使用してコレクションを作成しましょう- > db.demo688.insert( ... { ... information:{id:1,details:[ ...    {otherDetails:{ ...       values:75 ...       } ...    } ... ] ...

  2. MongoDBでネストされた配列のフィルタリング条件を設定します

    フィルタリング条件を設定するには、MongoDBaggregate()で$filterと$condを使用します。 $ filterは、指定された条件に基づいて返す配列のサブセットを選択します。ドキュメントを使用してコレクションを作成しましょう- > db.demo725.insertOne( ...    { ... ...       "details": { ... ...          "userMessages": [ ...