使用 COSMOSDB sql 查询的对象键的别名
Alias of an object key using COSMOSDB sql query
我正在使用 Cosmos DB,我想编写一个 SQL 查询 returns 文档对象中的键的不同名称。
为了详细说明,假设您在一个容器中有以下文档,在 "make" 对象中有 "makeName" 键。
{
"vehicleDetailId":"38CBEAF7-5858-4EED-8978-E220D2BA745E",
"type":"Vehicle",
"vehicleDetail":{
"make":{
"Id":"B57ADAAD-C16E-44F9-A05B-AAB3BF7068B9",
"makeName":"BMW"
}
}
}
我想编写一个查询来显示 "vehicleMake" 键代替 "makeName"。
如何在嵌套对象中给出别名 属性.
输出应该如下所示
{
"vehicleDetailId":"38CBEAF7-5858-4EED-8978-E220D2BA745E",
"type":"Vehicle",
"vehicleDetail":{
"make":{
"Id":"B57ADAAD-C16E-44F9-A05B-AAB3BF7068B9",
"vehicleMake":"BMW"
}
}
}
我不知道如何在 Cosmosdb 中查询以获得上述结果。
属性的别名类似于您在 SQL 服务器中使用 as
关键字创建列别名的方式。在您的示例中,它将是:
SELECT c.vehicleDetail.make.makeName as vehicleMake
FROM c
这会 return:
[
{
"vehicleMake": "BMW"
}
]
试试这个:
SELECT c.vehicleDetailId, c.type,
{"make":{"Id":c.vehicleDetail.make.Id, "vehicleMake":c.vehicleDetail.make.makeName}} as vehicleDetail
FROM c
它使用以下文档中描述的别名。我可以在文档或博客文章中找到的所有别名示例仅显示单一级别的 json 输出,但碰巧您可以在对象 (vehichleDetail) 中嵌套对象 (make) 以获得您想要的行为想要。
https://docs.microsoft.com/en-us/azure/cosmos-db/sql-query-aliasing
我正在使用 Cosmos DB,我想编写一个 SQL 查询 returns 文档对象中的键的不同名称。
为了详细说明,假设您在一个容器中有以下文档,在 "make" 对象中有 "makeName" 键。
{
"vehicleDetailId":"38CBEAF7-5858-4EED-8978-E220D2BA745E",
"type":"Vehicle",
"vehicleDetail":{
"make":{
"Id":"B57ADAAD-C16E-44F9-A05B-AAB3BF7068B9",
"makeName":"BMW"
}
}
}
我想编写一个查询来显示 "vehicleMake" 键代替 "makeName"。 如何在嵌套对象中给出别名 属性.
输出应该如下所示
{
"vehicleDetailId":"38CBEAF7-5858-4EED-8978-E220D2BA745E",
"type":"Vehicle",
"vehicleDetail":{
"make":{
"Id":"B57ADAAD-C16E-44F9-A05B-AAB3BF7068B9",
"vehicleMake":"BMW"
}
}
}
我不知道如何在 Cosmosdb 中查询以获得上述结果。
属性的别名类似于您在 SQL 服务器中使用 as
关键字创建列别名的方式。在您的示例中,它将是:
SELECT c.vehicleDetail.make.makeName as vehicleMake
FROM c
这会 return:
[
{
"vehicleMake": "BMW"
}
]
试试这个:
SELECT c.vehicleDetailId, c.type,
{"make":{"Id":c.vehicleDetail.make.Id, "vehicleMake":c.vehicleDetail.make.makeName}} as vehicleDetail
FROM c
它使用以下文档中描述的别名。我可以在文档或博客文章中找到的所有别名示例仅显示单一级别的 json 输出,但碰巧您可以在对象 (vehichleDetail) 中嵌套对象 (make) 以获得您想要的行为想要。
https://docs.microsoft.com/en-us/azure/cosmos-db/sql-query-aliasing