有没有办法在 CosmosDB 中使用 c.*?
Is there a way to use c.* in CosmosDB?
我正在尝试 运行 CosmosDB 中的查询,但我似乎无法按照我想要的方式获得结果。
这是查询:
SELECT c FROM c
JOIN p in c.Data.packages
WHERE p.packageId ="ID_9DACF11F-31F1-45C0-9A99-7ED846F9226E"
有没有办法在没有“c”的情况下获得以下结果:
[
{
"c": {
"id": "ID-6A23-432D-B862-4342D6B8C6F0",
"prop1": "value",
"prop2": "value",
"Data": {
"date": "2020-01-30T18:21:57",
"packages": [
{
"packageId": "123"
}
]
}
}
}
]
如:
[
{
"id": "ID-6A23-432D-B862-4342D6B8C6F0",
"prop1": "value",
"prop2": "value",
"Data": {
"date": "2020-01-30T18:21:57",
"packages": [
{
"packageId": "123"
}
]
}
}
]
我知道我可以使用 c.id、c.prop1 等。但是我有更多的属性,将来很难维护。那么有什么办法可以实现吗?
基本上是在寻找这样的东西:
SELECT c.* FROM c
JOIN p in c.Data.packages
WHERE p.packageId ="ID_9DACF11F-31F1-45C0-9A99-7ED846F9226E"
但这显然行不通。任何帮助表示赞赏!
对于具有多个别名的查询,请改用 VALUE c
。
SELECT VALUE c FROM c
JOIN p in c.Data.packages
WHERE p.packageId ="ID_9DACF11F-31F1-45C0-9A99-7ED846F9226E"
文档:https://docs.microsoft.com/en-us/azure/cosmos-db/sql-query-select
我正在尝试 运行 CosmosDB 中的查询,但我似乎无法按照我想要的方式获得结果。
这是查询:
SELECT c FROM c
JOIN p in c.Data.packages
WHERE p.packageId ="ID_9DACF11F-31F1-45C0-9A99-7ED846F9226E"
有没有办法在没有“c”的情况下获得以下结果:
[
{
"c": {
"id": "ID-6A23-432D-B862-4342D6B8C6F0",
"prop1": "value",
"prop2": "value",
"Data": {
"date": "2020-01-30T18:21:57",
"packages": [
{
"packageId": "123"
}
]
}
}
}
]
如:
[
{
"id": "ID-6A23-432D-B862-4342D6B8C6F0",
"prop1": "value",
"prop2": "value",
"Data": {
"date": "2020-01-30T18:21:57",
"packages": [
{
"packageId": "123"
}
]
}
}
]
我知道我可以使用 c.id、c.prop1 等。但是我有更多的属性,将来很难维护。那么有什么办法可以实现吗?
基本上是在寻找这样的东西:
SELECT c.* FROM c
JOIN p in c.Data.packages
WHERE p.packageId ="ID_9DACF11F-31F1-45C0-9A99-7ED846F9226E"
但这显然行不通。任何帮助表示赞赏!
对于具有多个别名的查询,请改用 VALUE c
。
SELECT VALUE c FROM c
JOIN p in c.Data.packages
WHERE p.packageId ="ID_9DACF11F-31F1-45C0-9A99-7ED846F9226E"
文档:https://docs.microsoft.com/en-us/azure/cosmos-db/sql-query-select