gpt4 book ai didi

sql - 如何使用 $v 和 $t 在 Azure 门户上查询 Cosmos DB

转载 作者:行者123 更新时间:2023-12-03 00:06:29 25 4
gpt4 key购买 nike

我在 Azure 上有一个带有 SQL API 的 Cosmos DB。我可以使用 Nuget 包通过 C# 查询数据,但从 Azure 门户 > Cosmos DB > 数据资源管理器运行查询时出现错误。

我想获取 $v 的值并根据它进行一些过滤。

使用

SELECT c.id, c.Remarks FROM c

我得到了嵌套对象的结果(参见下面的结果)。但我只需要嵌套对象中的一个值。

我尝试将语法更改为

SELECT c.id, c.Remarks.$v FROM c

SELECT c.id, c.Remarks.v FROM c

SELECT c.id, c.Remarks/$v FROM c

但我收到错误。

当前结果:

[
{
"id": "e9f3ae8e47ab4bbca97dadf3ff1fe08c",
"Remarks": {
"$t": 2,
"$v": "Success"
}
},
{
"id": "97bea2e9919c48f2bde83c11c50e8177",
"Remarks": {
"$t": 2,
"$v": "Failure"
}
},
{
"id": "bb142e17b8184d5c84a21aa2e218e3be",
"Remarks": {
"$t": 2,
"$v": "Success"
}
}
]

预期结果:

我想查看(最好应用过滤器以仅查看失败)

[
{
"id": "e9f3ae8e47ab4bbca97dadf3ff1fe08c",
"Remarks": "Success"
},
{
"id": "97bea2e9919c48f2bde83c11c50e8177",
"Remarks": "Failure"
},
{
"id": "bb142e17b8184d5c84a21aa2e218e3be",
"Remarks": "Success"
}
]

我遇到了类似的错误

Syntax error, invalid token '$'

但我找不到任何解决方案。

最佳答案

您似乎正在尝试对通过 Mongo 端点插入的文档使用 SQL API。这就是导致 $t/$v 的原因。

混合和匹配 Mongo 和 SQL API 有点复杂,不建议这样做。

您可以执行几件事中的一件,没有特定的顺序。

  1. 使用 Mongo 进行查询
  2. 仅使用 SQL API 重新创建您的集合
  3. 查看有关如何针对 Mongo 编写 SQL API 查询的答案:Cosmos DB + pyDocumentDB + Databricks (您只需执行少量 [] 即可访问以 $ 开头的内容,如下所示: SELECT TOP 10 twttr["$v"].tweet["$v"].source FROM twttr)

我个人建议除非必要,否则不要执行#3。如果您想使用 SQL,我建议只使用 SQL 并选择 #2。

关于sql - 如何使用 $v 和 $t 在 Azure 门户上查询 Cosmos DB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56799457/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com