我有一个项目表,其中两个列为'language'和'tag'。
用户提供input
后,我想输出language
为input
或tag
为input
的所有项目。
上面的SQL查询就是这个,
Sql查询:
Select * from TableName where language='input' OR tag='input'
我试图在Gql中执行相同但是徒劳无功。 Gql中的查询应该以上述方式输出数据。
答案 0 :(得分:1)
GQL没有OR
,所以基本上你必须做两个单独的查询和联合结果:
Select * from TableName where language='input'
Select * from TableName where tag='input'
您应该在应用端加入结果,Cloud Console也不支持此类内容。
请参阅GQL参考:https://cloud.google.com/datastore/docs/apis/gql/gql_reference
答案 1 :(得分:1)
我不知道您是否必须使用GQL,但是如果您能够避免使用GQL,则可以使用ndb过滤器。
results = TableName.query(ndb.OR(TableName.language == 'input',
TableName.tag == 'input'))
for result in results:
....your code here...
更多信息请参阅:https://cloud.google.com/appengine/docs/python/ndb/queries