如何使用祖先键列表查询实体

How to query for entities using a list of ancestor keys

我在 Google Cloud Datastore 中有以下数据模型:

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 语句都不起作用。

Cloud Datastore 查询最多只能对一个祖先进行操作,因此您必须 运行 这作为两个查询:

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

并合并结果。

或者如果您可以获取 所有 Child 个实体,您可以 运行:

SELECT * FROM Child