【发布时间】:2017-05-13 06:25:12
【问题描述】:
我使用 Mongo API 在我的 Cosmos DB 中存储了以下文档:
{
"_id" : ObjectId("59157eaabfeb1900011592c8"),
"imageResourceId" : "1489496086018.png",
"gallery" : "Tst",
"thumbnailRaw" : {
"$binary" : "<SNIP>",
"$type" : "00"
},
"tags" : [
"Weapon/Sword",
"Japanese"
],
"__v" : 1
}
我正在尝试执行一个排除包含“日语”标签的任何对象的查询。我制作了以下查询,它在真实的 Mongo DB 上正确执行(即,它不返回上述文档):
{"gallery":"Tst, "tags":{"$nin":["Japanese"]}}
在 Cosmos DB 上,此查询返回上图,尽管在 $nin 数组中找到了一个字符串。我是否正确执行此查询? Cosmos DB 是否有另一种受支持的方式来执行 NOT IN 逻辑操作?
【问题讨论】:
-
好像API不完整。我遇到了一些在 MongoDb 上运行但在 CosmosDb 上失败的查询
-
微软没有指定支持哪个版本或级别的 MongoDB API cosmosDB 真的很糟糕。事实证明,cosmosDB 对当前 MongoDB API v3.4 的支持非常有限,并且缺少很多功能。更糟糕的是,文档也非常稀缺