当前位置: 首页 > 面试题库 >

MongoDB和Java驱动程序:查询中“忽略大小写”

石超
2023-03-14
问题内容

这是我现在使用的代码,如何添加“忽略大小写”属性?

DBObject query = new BasicDBObject("prop", value);

谢谢


问题答案:

当我遇到确切的问题时,我无法通过忽略大小写来查询。我最终复制了要搜索使其标准化的值。在这种情况下,您可以创建一个新属性并将其转换为小写并在其上具有索引。

编辑:

DBObject ref = new BasicDBObject();
ref.put("myfield", Pattern.compile(".*myValue.*" , Pattern.CASE_INSENSITIVE));
DBCursor cur = coll.find(ref);

我想知道是否行得通?



 类似资料:
  • 我正在尝试使用MongoDBJava驱动程序作为聚合命令的一部分创建查询。目前我允许日期范围或特定日期数组作为参数。例如 日期范围查询工作正常,我解析xml并将其转换为在mongo中生成以下查询的DBObject; 对于指定日期,我只想返回在给定日期的00:00:00.000和第二天的00:00:00.000之间发生的结果。根据我对mongo查询的基本了解,我希望做一个类似于日期范围的$匹配,但是

  • 通过使用MongoDB和Java驱动程序,我有一个用户集合,我想根据他们的ObjectId进行查询(总体情况:我从ObjectId推断出对象的创建时间戳)。 问题是,用ObjectId查询似乎不起作用:我总是没有结果。为了测试的目的,我在搜索查询中硬编码了数据库中现有用户的ObjectId,只是为了确保我能得到结果: {“_id”:ObjectId(“565ef85ee4b0a4db3c2fc96

  • 我使用下面的mongo查询来获取最高温度。有人能帮助我们如何使用mongo java驱动程序,使用和在java中实现吗?

  • 谁能帮我用mongojack java驱动程序在mongodb子文档上为条件编写等效的查询 db.parentdocs.find({“subdoc._id”:ObjectId(“542d916a18ee9cfa2daeae15”)}) 这里subdoc是parentdoc文档中的一个子文档。我可以使用其他属性查询,但不能使用id BasicDBObject查询=新的BasicDBObject();

  • 我试图在MongoDB\驱动程序\查询中使用选项: 如果$选项似乎可以: --------$options: 数组([排序]= $query没有给我好的选项: 限制和批量大小不等于20,为什么?请问怎么办? 提前感谢

  • 问题内容: 我们当前的连接配置如下所示: 并且已在当前版本(源代码)中弃用,并将被删除:“此方法无法替代。使用connectTimeout属性控制连接超时。” 我认为重试和连接超时是两回事。有谁知道为什么改变了它以及它有什么(内部)含义? 问题答案: 关于autoConnectRetry的含义有很多困惑。大多数人认为这意味着,如果操作由于IOException而失败,驱动程序将重试该操作,直到ma