如何以特定格式获取 n1ql 查询响应?
How to get n1ql query response in a particular format?
当我执行以下查询时
SELECT r.name AS organizationRoleName, r.organizationRoleId, a.city, a.zip,a.address1
FROM `contact` AS c
UNNEST c.organizationRoles AS r
UNNEST r.addressAssociations AS aa
jOIN `optima_contact` AS a
ON aa.addressId = TO_NUMBER(a.addressId)
WHERE c.type = "organization" AND a.type = "address" and a.city="Plaridel";
我得到如下回复
[
{
"address1": "Ground Floor Waltermart Center-Plaridel, Cagayan Valley Road, Barrio Banga 1, Plaridel",
"city": "Plaridel",
"organizationRoleId": 903,
"organizationRoleName": "SUN - WALTERMART PLARIDEL",
"zip": "3004"
},
{
"address1": "Ground Floor Waltermart Center-Plaridel Cagayan Valley Road Barrio Banga 1 Plaridel",
"city": "Plaridel",
"organizationRoleId": 1001,
"organizationRoleName": "FRS1 Store",
"zip": "3004"
}
]
有没有办法得到下面格式的响应而不是上面的格式?
[
{
"organizationRoleId": 903,
"organizationRoleName": "SUN - WALTERMART PLARIDEL",
"storeAddress": {
"address1": "Ground Floor Waltermart Center-Plaridel, Cagayan Valley Road, Barrio Banga 1, Plaridel",
"city": "Plaridel",
"zipCode": "3004"
}
},
{
"organizationRoleId": 1001,
"organizationRoleName": "FRS1 Store",
"storeAddress": {
"address1": "Ground Floor Waltermart Center-Plaridel Cagayan Valley Road Barri Banga
1 Plaridel",
"city": "Plaridel",
"zipCode": "3004"
}
}
]
应该如何获得上述类型的响应?
您可以使用 {city, zip, address1} 和 Alias AS storeAddress 构造对象
SELECT r.name AS organizationRoleName, r.organizationRoleId,
{a.city, a.zip,a.address1} AS storeAddress
FROM `contact` AS c
UNNEST c.organizationRoles AS r
UNNEST r.addressAssociations AS aa
jOIN `optima_contact` AS a
ON aa.addressId = TO_NUMBER(a.addressId)
WHERE c.type = "organization" AND a.type = "address" and a.city="Plaridel";
当我执行以下查询时
SELECT r.name AS organizationRoleName, r.organizationRoleId, a.city, a.zip,a.address1
FROM `contact` AS c
UNNEST c.organizationRoles AS r
UNNEST r.addressAssociations AS aa
jOIN `optima_contact` AS a
ON aa.addressId = TO_NUMBER(a.addressId)
WHERE c.type = "organization" AND a.type = "address" and a.city="Plaridel";
我得到如下回复
[
{
"address1": "Ground Floor Waltermart Center-Plaridel, Cagayan Valley Road, Barrio Banga 1, Plaridel",
"city": "Plaridel",
"organizationRoleId": 903,
"organizationRoleName": "SUN - WALTERMART PLARIDEL",
"zip": "3004"
},
{
"address1": "Ground Floor Waltermart Center-Plaridel Cagayan Valley Road Barrio Banga 1 Plaridel",
"city": "Plaridel",
"organizationRoleId": 1001,
"organizationRoleName": "FRS1 Store",
"zip": "3004"
}
]
有没有办法得到下面格式的响应而不是上面的格式?
[
{
"organizationRoleId": 903,
"organizationRoleName": "SUN - WALTERMART PLARIDEL",
"storeAddress": {
"address1": "Ground Floor Waltermart Center-Plaridel, Cagayan Valley Road, Barrio Banga 1, Plaridel",
"city": "Plaridel",
"zipCode": "3004"
}
},
{
"organizationRoleId": 1001,
"organizationRoleName": "FRS1 Store",
"storeAddress": {
"address1": "Ground Floor Waltermart Center-Plaridel Cagayan Valley Road Barri Banga
1 Plaridel",
"city": "Plaridel",
"zipCode": "3004"
}
}
]
应该如何获得上述类型的响应?
您可以使用 {city, zip, address1} 和 Alias AS storeAddress 构造对象
SELECT r.name AS organizationRoleName, r.organizationRoleId,
{a.city, a.zip,a.address1} AS storeAddress
FROM `contact` AS c
UNNEST c.organizationRoles AS r
UNNEST r.addressAssociations AS aa
jOIN `optima_contact` AS a
ON aa.addressId = TO_NUMBER(a.addressId)
WHERE c.type = "organization" AND a.type = "address" and a.city="Plaridel";