2016-12-13 15 views
1

I가 Google 클라우드 데이터 저장소에서 다음 데이터 모델 :상위 키의 목록을 사용하여 개체를 쿼리하는 방법

Parent: 
    - name 

Child: 
    - ancestor: Parent 
    - name 

내가 Parent 키의 목록을 가지고있다. Parent 키 목록에서 내림차순으로 모든 Child 엔티티를 쿼리하려면 어떻게해야합니까?

나는

SELECT * FROM Child WHERE __key__ HAS ANCESTOR Key(Parent, 'abc'), Key(Parent, 'dfe') 

SELECT * FROM Child WHERE __key__ HAS ANCESTOR [Key(Parent, 'abc'), Key(Parent, 'dfe')] 

을 시도하고 어느 쪽도 선택 문이 작동하지 않습니다.

SELECT * FROM Child WHERE __key__ HAS ANCESTOR Key(Parent, 'abc') 
SELECT * FROM Child WHERE __key__ HAS ANCESTOR Key(Parent, 'dfe') 

을하고 결과를 병합 :

답변

1

클라우드 데이터 저장소 쿼리는 두 쿼리로 이것을 실행해야 할 것이다, 그래서 대부분 하나의 조상에서에서 작동 할 수 있습니다.

아니면 모든Child 엔티티를 가져 오는 멀리 얻을 수 있다면, 당신은 실행할 수 있습니다 :

SELECT * FROM Child 
+0

불행하게도, 난 도망을 모두 가져 오는에 얻을 수 없다, 내가 그들을 필터링 할 필요가 있기 때문이다. 이는 조상 당 하나의 쿼리를 의미하는 최상의 솔루션이라고 생각됩니다. :( – Kookz