我在CosmosDB数据库中有这样的JSON文档。
{
"Version": 0,
"Entity": {
"ID": "xxxxxxx",
"EventHistory": {
"2020-04-28T16:30:35.6887561Z": "NEW",
"2020-04-28T16:35:21.1811993Z": "PROCESSED"
},
"SourceSystem": "xxxx",
"SourceSystemIdentifier": "xxxx",
"PCC": "xxx",
"StorageReference": "xxxxxxxxxxxx",
"SupplementaryData": {
"eTicketCount": "2"
}
}
}
EventHistory节点中的子属性数量是动态的。在示例中有两个,但它可以是任何数量。
我找不到计算节点包含多少子属性的方法。至少,我需要查询那些只声明了一个属性的。
FYI:我无法更改文档的格式。我知道将它们存储为数组会更方便。
我尝试使用ARRAY_LENGTH或COUNT函数,但由于它不是数组,因此无法应用前者。
1条答案
按热度按时间uinbv5nw1#
也许您可以通过计算EventHistory作为文本的长度来计算EventHistory中有多少个属性。类似这样的查询可以找到只有一个属性的条目。
缺点是:随着更多的属性和/或值在长度上变化很大,每个渐进长度范围将变得不太精确。