MongoDBを使用して、数字キーを使用してオブジェクト内の値を検索します
値を検索するには、MongoDBの$whereを使用するだけです。ドキュメントを使用してコレクションを作成しましょう-
> db.demo268.insertOne( ... { ... "details" : { ... "101" : "John", ... "1001" : "Bob" ... } ... } ...); { "acknowledged" : true, "insertedId" : ObjectId("5e4816141627c0c63e7dbaaf") }
find()メソッドを使用してコレクションからすべてのドキュメントを表示する-
> db.demo268.find();
これにより、次の出力が生成されます-
{ "_id" : ObjectId("5e4816141627c0c63e7dbaaf"), "details" : { "101" : "John", "1001" : "Bob" } }
以下は、数字キーを使用してオブジェクト内の値を検索するためのクエリです-
> db.demo268.find({ $where: ... function() { ... for (var k in this.details) { ... if (this.details[k] == "Bob") { ... return true; ... } ... } ... } ...})
これにより、次の出力が生成されます-
{ "_id" : ObjectId("5e4816141627c0c63e7dbaaf"), "details" : { "101" : "John", "1001" : "Bob" } }
-
正規表現を使用したMongoDBでのテキスト検索
正規表現を使用したMongoDBでのテキスト検索には、$regexを使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo519.insertOne({"Value":"50,60,70"});{ "acknowledged" : true, "insertedId" : ObjectId("5e88b9c0b3fbf26334ef6111") } > db.demo519.insertOne({&qu
-
大文字と小文字を区別しない検索を使用したMongoDBクエリ?
大文字と小文字を区別しない検索の場合は、find()メソッドで正規表現を使用します。以下は構文です- db.demo572.find({"yourFieldName" : { '$regex':/^yourValue$/i}}); 上記の構文を理解するために、ドキュメントを使用してコレクションを作成しましょう- > db.demo572.insertOne({"CountryName":"US"});{ "acknowledged" : true, "in