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

Spring Data Mongo Query使用多个字段进行查询并在一次调用中返回

何雅惠
2023-03-14
{x:10, y:"temp", z:20} 

集合中还有多个其他文档具有与上面相同的架构。

现在,我有了一个列表,其中每个元素都包含一对属于键x和y的值。这可以被描绘成:

       [{10,"temp"}, {20,"temp1"}, .....] 
keys ->  x    y        x    y

现在,我知道,如果我在一个循环中处理数组并获取每一对,我可以构造一个查询,如下所示:

query.addCriteria(Criteria.where("x").is(10).and("y").is("temp"))

共有1个答案

陆安国
2023-03-14

您可以使用Criteria.orOperator返回与列表中至少一个条件匹配的每个文档。

在列表上循环构建标准列表

List<Criteria> criteriaList = new ArrayList<>();
for (item : yourList) {
  criteriaList.add(Criteria.where("x").is(item.x).and("y").is(item.y));
}

使用或操作符构建查询:

Query.query(new Criteria.orOperator(criteriaList.toArray(new Criteria[criteriaList.size()])));
 类似资料:
  • 问题内容: 我有一个包含多个CTE的相当复杂的查询,但是其他人都从中提取了1个主要CTE,这是否会导致该主要CTE多次执行? 问题答案: 您可以这样使用CROSS JOIN: 这将防止的多次执行(有关实际执行计划,请参见属性)。 示例:如果执行此查询 使用数据库,那么实际的执行计划将是

  • 问题内容: 因此,这不适用于mysql_query。 我严格使用c ++,并且我没有使用php。 我希望执行此双重查询,以便在由并发用户创建ID的交易系统中,我将始终具有唯一ID。 它可以完美地在MySql数据库中运行,但是我需要将其添加到Eclipse(我正在使用Ubuntu 12.04 LTS)。 我的应用程序很大,如果可能的话,我不想更改为mysqli,但是如果没有其他方法,那就可以了。 你

  • 我正在使用Python(IPython 我有一个3000个唯一ID的数组,可以从API中提取数据,一次只能使用一个ID调用API。 我希望以某种方式同时拨打3组1000个电话,以加快速度。 最好的方法是什么? 提前感谢任何帮助!

  • 问题内容: 我在这里找到了一些可以更新一个字段的东西:http : //www.karlrixon.co.uk/articles/sql/update-multiple-rows-with-different- values-and-a-single-sql- query/ 我的问题是如何更新多个字段?如: 这当然是行不通的。尝试了其他几种组合并失败了。任何的想法?谢谢! 问题答案:

  • 问题内容: 我有两个表,一个“公司”和一个“员工”: 我想在表中列出每个员工,并在其旁边列出公司。通过调用并在模板循环中通过并调用,这非常简单。 该解决方案的问题在于,将为循环中的每个项目创建一个新查询。因此,对于每个员工,公司都会有一个查询,看起来像这样: 相反,我希望最初在获取雇员的同一查询中加入此联接。像这样: Django QuerySet是否可能?如果没有,有没有办法可以解决此问题(没有

  • 我需要进行异步调用,并使用其中存在的一些值对同一服务进行多次调用。将这些调用的响应与第一个调用结合起来,然后返回。 例如,当我第一次调用时,我会在JSON下面看到一个ID列表。现在,我必须使用这些ID对一个服务进行多次调用,并列出它们的响应列表,然后通过在同一个JSON中添加它们将其发送到下游。 我试过使用zipWhen和 但是结果列表总是以空或空的形式出现。我们如何才能做到这一点?我是不是漏了什