0

我正在尝试在 cosmos db 上获取符合特定条件的记录,但我一直无法做到,看起来 cosmos 正在抱怨 left 并且我一直无法找到替代方案。

这是我一直在尝试获取记录的查询:

SELECT * 
FROM Rx c 
where c.tenantId = '5c6cb2d77c1c2edc001b9007' AND 
      c.left.series ='Clariti 1 Day Toric 30pk'

下面是一个示例 JSON 文档

{
"startDate": null,
"expirationDate": null,
"left": {
    "seriesId": "54b80bae7558391d0044ffd7",
    "productId": null,
    "productName": null,
    "series": "Clariti 1 Day Toric 30pk"
},
"right": null,
"tenantId": "5c6cb2d77c1c2edc001b9007"
}

这是返回的错误:语法错误,'left'附近的语法不正确。

4

1 回答 1

2

您的查询应该使用[]而不是dot在查询嵌套对象时使用

方括号表示法允许您访问包含特殊字符的属性

SELECT * 
FROM Rx c 
where c.tenantId = '5c6cb2d77c1c2edc001b9007' AND 
      c["left"]["series"] ='Clariti 1 Day Toric 30pk'

演示

在此处输入图像描述

于 2019-05-01T18:06:18.467 回答