【问题标题】:ANCESTOR Query Parse Error: Using DISTINCTANCESTOR 查询解析错误:使用 DISTINCT
【发布时间】:2014-10-03 05:23:05
【问题描述】:
不是这个问题:
Ancestor query parse error
我用“IS”正确地构造了它:
SELECT DISTINCT batch_no FROM Entry WHERE ANCESTOR IS KEY('ag1kZXZ-dHRiLXRhbWVychkLEgdCcmV3ZXJ5IgxCUi1USEVSRURQRUEM')
但我仍然收到错误:
这是为什么呢?
【问题讨论】:
标签:
google-app-engine
gql
【解决方案1】:
在这种情况下,DISTINCT 导致了问题。删除它,这个 Query 没有问题。
我认为它以某种方式隐式投射,您无法访问密钥,只能访问您 DISTINCT 的属性; 即使您使用“*”
虽然我认为在这一点上错误消息并不明显是公平的。
Google 在db.Query 文档中这样说:
这只会返回实体的第一个结果
被投影的属性的值相同。
而在GQL documentation
结果集中只会返回完全唯一的结果。
这将只返回具有
被投影的属性的值相同。
如果这个问题是重复的或简单的,请审核这个自我回答的问题。谢谢。