当前位置: 首页 > 知识库问答 >
问题:

Mongodb中组合二字段的搜索

鲍建业
2023-03-14

我使用Mongodb和我的数据库模式,如下所示:

firstName: 'vahid',
lastName: 'kh',
age: 12 

我要找到所有的记录,名字+名字喜欢‘瓦希德kh’。在SQL中,这将是:

从firstName+lastName类似“%Vahid KH%”的表中选择*

共有1个答案

夏何平
2023-03-14

似乎只有今天发布的2.4版本才有这个功能。

> db.temp.save({ "firstName" : "Bob", "lastName" : "Smith", Age : 12 });
> db.temp.find();
{ "_id" : ObjectId("5148a2a00477cddcdece1b34"), "firstName" : "Bob", "lastName" : "Smith", "Age" : 12 }
> db.temp.aggregate({ $project : { "name" : { $concat : [ "$firstName", " ", "$lastName" ] } } });
{
    "result" : [
       {
           "_id" : ObjectId("5148a2a00477cddcdece1b34"),
           "name" : "Bob Smith"
       }
    ],
    "ok" : 1
} 
 类似资料:
  • 我有两个字段FirstName和LastName存储在MongoDB中。从前端,我接收到一个字符串,包含名字和姓氏,用空格分隔,我需要一个查找查询,搜索名字和姓氏的组合。

  • 我有一个ISODate格式的“DateAdd”Mongo集合 所以现在是当地时间1小时后 当我尝试获取2018-08-31 06:00:00之后添加的记录时,使用以下查询,我无法获取UTC中的记录 在MongoDB中搜索日期字段时,如何转换UTC日期?

  • 我在我的应用程序中使用Hibernate搜索。其中一个子集合映射为IndexeDemBedded。子对象有两个字段,一个是id,另一个是date(使用date resoultion到毫秒)。当我搜索ID=1(或某个值)并且date等于另一个值时,我会得到第一个和第二个匹配的所有情况的结果。我只想在同一个孩子中获得两个字段匹配的记录,但我在不同的孩子中获得匹配,结果会高得多。下面是代码片段 主类是用

  • 我在使用Java搜索MongoDB中的ISODate字段时遇到麻烦。我想找到精确匹配的日期。 下面是我如何查询第一个集合并获取ISODate字段“Timestamp”。一旦我得到这个日期,我想搜索另一个具有相同“Timestamp”值的集合。 。。。 我正在格式化ISODate,因为它以我想要搜索的不同格式返回我的日期。因此,我将其转换为这种模式“yyyy-MM-dd HH: mm: ss” 我找

  • 抱歉发了这么长的帖子! 我有一个Mongo收藏,包含以下文档: 我想查询这些文档,并返回每个名称的最大值条目,因此我想要的结果集(顺序无关紧要)是: 如果我想在C#中做完全相同的事情,我会使用: 使用聚合管道,我已经达到了: 这给了我以下结果集: 如您所见,我有一个文档数组,每个文档都包含一个“_id”字段(名称)和一个“highest”字段(实际文档)。 这将用C表示为: 我想知道的是,是否可以

  • 本文向大家介绍MongoDB查询以查找FirstName和LastName的字段组合?,包括了MongoDB查询以查找FirstName和LastName的字段组合?的使用技巧和注意事项,需要的朋友参考一下 以下是要查询的字段组合查询- 这将产生以下输出-