python - Google AppEngine 复杂的 WHERE 条件

标签 python google-app-engine where-clause gql gqlquery

我想要一个类似的条件

  • 开始时间 <= 开始时间_输入 <= 结束时间
  • 或者
  • 开始时间 <= 结束时间_输入 <= 结束时间
  • 或者
  • (start_time_input <= start_time AND end_time <= end_time_input)

文档中确定的两种方式(我理解的 http://code.google.com/appengine/docs/python/datastore/queries.htmlhttp://code.google.com/appengine/docs/python/datastore/gqlqueryclass.html)as 是:

filter_trips = db.GqlQuery("SELECT key FROM Trips WHERE (start_time <= :start_time_input AND end_time >= :start_time_input ) OR (start_time <= :end_time_input AND end_time >=:end_time_input ) OR ( start_time >= :start_time_input AND end_time <= :end_time_input )", start_time_input = start_time_input , end_time_input = end_time_input )

错误:解析错误:符号处的 WHERE 标识符无效(

或者

filter_trips = db.GqlQuery("从行程中选择 key WHERE start_time <= :start_time_input <= end_time OR start_time <= :end_time_input <= end_time OR (:start_time_input <= start_time AND end_time <= :end_time_input )", start_time_input = start_time_input , end_time_input = end_time_input )

错误:解析错误:符号 <= 处不应有其他符号

请帮忙!

最佳答案

GQL 没有 OR。请参阅http://code.google.com/appengine/docs/python/datastore/gqlreference.html

您需要通过多个查询来执行此操作。

关于python - Google AppEngine 复杂的 WHERE 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6084622/

相关文章:

google-app-engine - 如何在GAE中有效实现session?

python - 比较两个时间序列(模拟结果)

python - 如何根据另一个字段的更新来更新一个字段?

java - 当我将图像存储在谷歌驱动器上时如何在我的项目中显示缩略图

如何使用 OAuth 使用 Facebook 帐户登录 Google App Engine 的 Java 示例

mysql - 在 CASE 语句之后应用 WHERE?

python - 线程 : thread target takes more arguments than given 中的异常

python - 有没有像 python 的通用依赖解析库这样的东西?

mysql - Yii2 使用 where AND 和 OR 进行循环分组

mysql - 如何在需要将日期字段与当前时间进行比较的 sql 查询中编写 where 子句?