필자의 경우 엔 entreprise (회사)가 여러 사이트 (filiales)를 가질 수 있으므로 모든 filial을 형식 배열로 가져오고 싶습니다.n1ql을 사용하여 변수를 하위 쿼리로 전달하는 방법은 무엇입니까?
json entreprise (회사)에는 사이트 (filiales)에 대한 정보가없고 json 사이트 (filiales)에는 entreprise (회사) uid가 있습니다. JSON의 ENTREPRISE (기업) :
{
"type": "entreprise",
"dateUpdate": 1481716305279,
"owner": {
"type": "user",
"uid": "PNnqarPqSdaxmEJ4DoMv-A"
}
}
JSON 사이트 (filiales) :
{
"type": "site",
"entreprise": {
"uid": "3c0CstzsTjqPdycL5yYzJQ",
"type": "entreprise"
},
"nom": "test"
}
내가 노력 쿼리 :
SELECT
META(entreprise).id as uid,
ARRAY s FOR s IN (SELECT d.* FROM default d WHERE d.type = "site" AND d.entreprise.uid = uid) END as sites,
entreprise.*
FROM default entreprise
WHERE entreprise.type = "entreprise";
결과 : 다음 오류
{
"code": 5010,
"msg": "Error evaluating projection. - cause: FROM in correlated subquery must have USE KEYS clause: FROM default."
}
나는 별칭을 사용한다 :
SELECT
META(entreprise).id as uid,
ARRAY s FOR s IN (SELECT d.* FROM default d WHERE d.type = "site" AND d.entreprise.uid = META(entreprise).id) END as sites,
entreprise.*
FROM default entreprise
WHERE entreprise.type = "entreprise";
결과 : 사이트 배열이 비어 있습니다.
Merci, 작동합니다. :) –