【问题标题】:Cosmos DB - How to access fields that have a space in their name?Cosmos DB - 如何访问名称中有空格的字段?
【发布时间】:2021-02-12 20:46:47
【问题描述】:

我在 Cosmos DB 中有一些数据,其中字段的名称中有空格,如下所示:

{
    "First Name": "John",
    "Middle Name": null,
    "Last Name": "Doe",
    ...
}

我正在尝试从 Azure Notebook 运行一些 SQL 查询,但我无法通过以下任一方式访问这些字段

select 
a.[First Name]
from SomeTable a
where a.id = "00000000-0000-0000-0000-000000000000"

select 
a.["First Name"]
from SomeTable a
where a.id = "00000000-0000-0000-0000-000000000000"

它适用于没有空格的字段。有没有办法在 SELECT 或 WHERE 子句中使用空格访问这些字段?

【问题讨论】:

  • 这是 Cosmos 笔记本还是 Synapse 笔记本?
  • @MarkBrown 这是一个 Cosmos 笔记本,可通过数据资源管理器选项卡直接从 Azure 门户访问。
  • 请看我分享的链接问题,本质上是一样的(空格被认为是非字母数字),并且有答案
  • @DavidMakogon 我同意它是相似的/可能是重复的。但是,我看到了其他答案并且错过了与常规 SQL 不同的是,Cosmos SQL 中的括号表示法期望别名后没有句点。

标签: azure-cosmosdb azure-cosmosdb-sqlapi


【解决方案1】:

显然这样做的方法是:

select 
a["First Name"]
from SomeTable a
where a.id = "00000000-0000-0000-0000-000000000000"

表格/表格别名后不要加句点...

【讨论】:

    猜你喜欢
    • 2010-09-12
    • 2018-07-20
    • 2018-12-07
    • 2021-09-03
    • 2021-12-31
    • 1970-01-01
    相关资源
    最近更新 更多