猿问

mongoDB 中的名字和姓氏组合搜索

我存储了两个字段 FirstName 和 LastName 存储在 MongoDB.from Frontend,我收到一个字符串,其中包含用空格分隔的名字和姓氏我需要一个查找查询来搜索名字和姓氏的组合。

这里是例如。设想

在数据库中我有以下对象

{ firstName: "Hemant Kumar", lastName: "Rajpoot" };

如果我收到"Hemant Kumar Rajpoot"它应该匹配。如果可能,请不要给出聚合解决方案。


回首忆惘然
浏览 360回答 3
3回答

米脂

$regexMatch如果您使用的是最新的 mongodb 4.2版,则可以使用db.collection.find({  "$expr": {    "$regexMatch": {      "input": { "$concat": ["$first", " ", "$last"] },      "regex": "a",  //Your text search here      "options": "i"    }  }})

梵蒂冈之花

您可以结合使用$expr、$eq和$concat来做到这一点。例子:db.yourCollection.find({  $expr: {    $eq: [      {$concat: ["$firstName", " ", "$lastName"]},       "Hemant Kumar Rajpoot" // your full name to search here    ]  }})

元芳怎么了

如果你想使用聚合来做到这一点。这是一个例子db.user.aggregate(   [       {            $project : {                fullname: {$concat: ["$firstname", " ", "$lastname"]}            },        },        {            $match : {                fullname: "your full name"            }        }   ])
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答