从App Engine数据存储中使用Group By获取记录
我正在尝试做这样的事情:
result = db.GqlQuery("SELECT * FROM myDataMode COUNT(Employee) GROUP BY(Department) WHERE Salary > :1"10000)
但是我遇到了一个错误:
BadQueryError: Parse Error: Expected no additional symbols at symbol count
有没有人能帮我一下呢?
2 个回答
1
因为GQL没有COUNT
和GROUP BY
这两个功能,所以我设计了一个解决方案:
result = db.GqlQuery( SELECT * form Employee)
首先,创建一个数组,这个数组会包含结果中所有不重复的部门:
if result.Department not in array:
array.append(result.Department)
for department in array:
query = db.GqlQuery(SELECT * form Employee WHERE Department = :1,department)
print "In" + department + query.count() +"Employees are working"
5
GQL不是SQL。它没有COUNT()
或者GROUP BY()
这些功能。想了解更多,可以查看这个GQL参考文档。