我正在使用Spring Data的MongoTemplate通过单个查询更新多个文档。我需要能够限制每次通话更新的文件数量。由于我不清楚的原因,限制无效:
Query query = new Query(
Criteria.where( "foo" ).is( bar )
.and( "status" ).is( 1 ) );
query.limit( 10 );
Update update = new Update();
update.set( "status", 2 );
WriteResult result = mongoTemplate.updateMulti( query, update, "bazCollection" );
logger.info( result.getN() + " documents updated" );
result.getN()始终返回符合条件且忽略限制的文档总数,并且所有符合条件的文档都会被修改。
这是不是有原因吗?
有没有更好的方法来完成同样的事情?