问题描述
给出以下文件:
{
"id": 1,"types":
{
"type1": { "visible": true },"type2": { "visible": false }
}
},{
"id": 2,"types":
{
"type3": { "visible": true }
}
},{
"id": 3,"types":
{
"type4": { "visible": false }
}
}
我应该编写哪种SQL查询来返回至少一种类型为“可见” ==假的文档?
请注意,“类型”是对象,而不是数组。实际上,这是一本以属性名称为键的字典。 “类型”对象的属性名称是不可预测的,因此我无法在查询中对其进行硬编码。
解决方法
据我所知,没有办法直接使用SQL进行处理。
有两种解决方法。首先,使用已知密钥更改文档的架构。另一个,创建UDF来解决这个问题。
您可以参考Querying complex nested object in cosmosdb using sql Api