"contact": {
"extendedData": [],
"id": "org_2_1084",
"organizationId": 1084,
"organizationName": "abc",
"organizationRoles": [
{
"name": "NLUZ",
"organizationRoleId": 893,
"roleSpecId": -104,
"statusId": 1,
"statusLastChangedDate": "2019-08-04T13:14:44.616Z"
},
{
"extendedData": [
{
"characteristicId": "1",
"characteristicValue": "M049",
"extendedDataId": "364"
},
{
"characteristicId": "2",
"characteristicValue": "ST",
"extendedDataId": "365"
}
],
"name": "SB - GULF NIGHT TECHNOTEL - LINGAYEN",
"organizationRoleId": 894,
"partyRoleAssocs": [
{
"partyRoleAssocId": "512"
}
],
"roleSpecId": -103,
"statusId": 1,
"statusLastChangedDate": "2019-08-04T13:14:44.616Z"
},
{
"name": "SLUZ",
"organizationRoleId": 895,
"roleSpecId": -104,
"statusId": 1,
"statusLastChangedDate": "2019-08-04T13:14:44.616Z"
},
{
"extendedData": [
{
"characteristicId": "1",
"characteristicValue": "M050",
"extendedDataId": "366"
},
{
"characteristicId": "2",
"characteristicValue": "ST",
"extendedDataId": "367"
}
],
"name": "adfasd",
"organizationRoleId": 896,
"partyRoleAssocs": [
{
"partyRoleAssocId": "513"
}
],
"roleSpecId": -103,
"statusId": 1,
"statusLastChangedDate": "2019-08-04T13:14:44.616Z"
}
],
"statusId": 1,
"statusLastChangedDate": "2019-08-04T10:14:44.697Z",
"tenantId": "2",
"type": "organization"
}
}
Мне нужно выбрать весь документ, в котором тип является организацией, и любой из «характерных значений» внутри расширенных данных массива - «M050». Выше приведен пример структуры документа. Как я могу искать внутри массива, который также является частью другого массива в couchbase?
Я пробовал ниже N1ql запрос, он не работает.
SELECT *
FROM `contact`
UNNEST contacts.organizationRoles AS roles
WHERE contacts.type = "organization"
AND ANY extendedData in roles satisfies
extendeddata.characteristicValue="M050".