Java 查询中的Azure mongodb$不工作

Java 查询中的Azure mongodb$不工作,java,mongodb,azure,grails,azure-cosmosdb,Java,Mongodb,Azure,Grails,Azure Cosmosdb,我收集了140份文件 { "name" : "name1", "dept" : "tech", "address" : "adr3" } 在所有140份文件中,该部门是技术部门 当我在azure mongodb中执行查询时 MongoDatabase db = mongo.getDatabase("test") def query = new BasicDBObject(['dept':['$in':['tech']]]) FindIte

我收集了140份文件

{

    "name" : "name1",

    "dept" : "tech",

    "address" : "adr3"

}
在所有140份文件中,该部门是技术部门 当我在azure mongodb中执行查询时

    MongoDatabase db = mongo.getDatabase("test")
    def query = new BasicDBObject(['dept':['$in':['tech']]])
    FindIterable documents = db.getCollection("employees").find(query)
    def outList =  documents.collect {it}
我只得到101份文件,而不是140份记录

这在本地mongodb中运行良好。直到上周,我还在azure中工作。 我做错什么了吗?有人面临类似情况吗

如果我将查询更改为

def query = new BasicDBObject(['dept':'tech'])
我得到了全部140份文件


如果我将批处理大小更改为10,$in查询只返回10个文档。

我也有同样的问题,我使用
$elemMatch

mongoDB.collection('mycol', (err, collection) => {            
    if (err) throw err;            
    collection.find({dept: {$elemMatch:{$in : ['tech']}}}).toArray((err, docs) => {
        console.log(docs);
    });
});

萨尔。根据本例中的分享:,问题似乎出在微软方面。你可以等到bug修复

答复如下:

谢谢大卫的报道!我调查了这个问题,这是一个 我们这边的bug是在多种条件下出现的。我 已经对其进行了修复,并将在本周末前进行检查 (然后,我们的部署周期决定如何将修复程序传播到所有用户 世界各地的数据中心)。如果您对此有任何疑问,请告诉我 不要工作,这会阻碍你。向你问好,奥瑞斯蒂斯


希望它能帮助您。

谢谢萨吉塔兰,它对您有效吗,而不是对我,因为部门不是一个阵列。谢谢大卫和杰伊