我正在使用cosmos db创建服务。我正在尝试创建搜索查询。 查询:
SELECT product.Name,product1.Name
FROM catalog
join industry in catalog.Industy
join category in industry.Category
join product1 in category.Product
join Subcategory in category.Subcategory
join product in Subcategory.Product
WHERE CONTAINS(product1.Name,'dg')
但是我无法同时获得产品和产品清单。它给了我错误。名称已被使用。 错误:
Object creation error, property name 'Name' specified more than once
我要提取的树:
[
{
"id": "string",
"industy": [
{
"id": "string",
"category": [
{
"id": "string",
"subcategory": [
{
"id": "string",
"product": [
{
"id": "string",
"methodOfPreparation": [
{
"id": "string",
}
],
"addons": [
{
"id": "string"
}
]
}
]
}
],
"product": [
{
"id": "string",
"methodOfPreparation": [
{
"id": "string"
}
],
"addons": [
{
"id": "string"
}
]
}
]
}
]
}
]
}
]
期望输出
product[],prodcut1[]
我该如何解决?
答案 0 :(得分:1)
首先,如果您使用别名作为注释中提到的@Zohar,则可以解决该错误。
SELECT product.Name as productName,product1.Name as product1Name
FROM catalog
join industry in catalog.industy
join category in industry.category
join product1 in category.product
join Subcategory in category.subcategory
join product in Subcategory.product
原因是每个检索到的项目都是一个obj,结果的格式是一个包含许多对象的数组。该对象不能接受重复的列名。
如果要获得product[],prodcut1[]
之类的格式,则需要循环结果并自己汇编。(例如,使用存储过程)