我使用Azure DocumentDB来存储一些键值对 . 这是我使用的文档的结构
{
"Key": "Deleted",
"Value": {
"email": "abc@cdf.com"
}
}
当我写这样的DocumentDB查询时,
SELECT C.Value FROM C
此查询不起作用 . 这是我收到的错误消息 .
Syntax error, incorrect syntax near 'Value'.
但这个查询工作正常,
SELECT C.Key FROM C
我理解' Value
'应该是azure documentdb中的关键字 . 我怎么查询呢?
3 回答
由于您的文档存储为JSON,因此您可以按如下方式访问它们:
这将导致:
Value是DocumentDB语法中的关键字,因此这就是您收到错误的原因 . 请参阅本文中的Value关键字DocumentDB syntax - VALUE关键字提供了返回JSON值的方法 .
为了解决这个问题,您可以按照Yannick所说的方式查询,即
在DocumentDB查询语法中,语法<collection_expresion> .property_name与<collection_expression> [“property_name”]完全相同 . 所以,有效的,
和...一样
语法<collection_expression> [“property_name”]允许人们去除可能具有非标识符字符的属性,例如“我的值”(我和值之间的空格),或“值”,“选择”等关键字 .
因此,
将适用于您的情况 .