我正在研究Google Cloud Datastore GQL grammar - 特别是HAS ANCESTOR
和HAS DESCENDANT
比较运算符。
提供以下人实体:
下面的GQL查询会产生相同的输出吗?
SELECT * FROM Person WHERE key_name='Fred' HAS ANCESTOR KEY('Person', 'Amy')
SELECT * FROM Person WHERE KEY('Person', 'Amy') HAS DESCENDANT key_name='Fred'
如果是这样,我不了解HAS DESCENDANT条款的存在。
提前致谢!
答案 0 :(得分:2)
这两个GQL查询应该产生相同的结果:
SELECT * FROM Person WHERE __key__ HAS ANCESTOR KEY('Person', 'Amy')
SELECT * FROM Person WHERE KEY('Person', 'Amy') HAS DESCENDANT __key__