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

特定の大文字と小文字を区別しない検索のためのMongoDBクエリ


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

> db.demo186.insertOne({"UserEmailId":"JOHN@GMAIL.COM","UserName":"John"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e399d769e4f06af55199808")
}
> db.demo186.insertOne({"UserEmailId":"chris@gmail.com","UserName":"chris"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e399d879e4f06af55199809")
}
> db.demo186.insertOne({"UserEmailId":"DAVID@GMAIL.COM","UserName":"David"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e399d979e4f06af5519980a")
}
>

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

> db.demo186.find();

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

{ "_id" : ObjectId("5e399d769e4f06af55199808"), "UserEmailId" : "JOHN@GMAIL.COM", "UserName" : "John" }
{ "_id" : ObjectId("5e399d879e4f06af55199809"), "UserEmailId" : "chris@gmail.com", "UserName" : "chris" }
{ "_id" : ObjectId("5e399d979e4f06af5519980a"), "UserEmailId" : "DAVID@GMAIL.COM", "UserName" : "David" }

以下は、大文字と小文字を区別しない検索のクエリです-

> var userMailId = [ /john@gmail.com/i, /david@gmail.com/i ]
> db.demo186.find({
...   '$or': [
...      { 'UserEmailId': { '$in': userMailId} },
...      { 'UserName': 'John' }
...   ]
...})

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

{ "_id" : ObjectId("5e399d769e4f06af55199808"), "UserEmailId" : "JOHN@GMAIL.COM", "UserName" : "John" }
{ "_id" : ObjectId("5e399d979e4f06af5519980a"), "UserEmailId" : "DAVID@GMAIL.COM", "UserName" : "David" }

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

    MongoDB find()を使用して電子メール文字列を検索します。ドキュメントを使用してコレクションを作成しましょう- > db.demo727.insertOne({UserId:"John@email.com"}); {    "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