문서 샘플 : link카우치베이스 주식회사 N1QL 배열 쿼리
관련 JSON 페이스트
{
"propertyCodes": {
"provider": [
{
"code": [
{
"value": [
{
"value": "304387"
}
]
}
],
"providerCode": "hotelbeds",
"providerType": "gds"
},
{
"code": [
{
"value": [
{
"name": "Country Code",
"value": "EG"
},
{
"name": "City Code",
"value": "HRG"
},
{
"name": "Hotel Code",
"value": "91U"
}
]
}
],
"providerCode": "gta",
"providerType": "gds"
}
]
},
"name": "Arabia Azur Resort"
}
나는 propertyCodes.provider.code.value.value
및 propertyCodes.provider.providerCode
을 기반으로 문서를 검색 쿼리 (및 인덱스)를합니다. 나는 각각 별도로 관리 할 수 있지만 단일 쿼리에서 두 방법을 병합하는 방법을 잘 모르겠습니다.
SELECT meta().id FROM giata_properties AS gp USE INDEX(`#primary`) WHERE ANY v WITHIN gp.propertyCodes.provider[*].code SATISFIES v.`value` = '150613' END;
SELECT meta().id FROM giata_properties AS gp USE INDEX(`#primary`) WHERE ANY v within gp.propertyCodes.provider[*].providerCode SATISFIES v = 'hotelbeds' END;
그래서 예를 들어 나는 304387
의 propertyCodes.provider.code.value.value
을 포함하는 문서를 가져 오기 위해 원하는 코드 값이 문서를 통해 복제 할 수 있기 때문에 그 provider
도 hotelbeds
이지만, 코드와 providerCode 조합은 고유합니다.
링크를 살펴보십시오. 이 질문에 단일 문서의 관련 섹션을 추가하십시오. – geraldss