Google AppEngine комплекс ГДЕ состояние - PullRequest
1 голос
/ 22 мая 2011

Я хочу, чтобы у условия было что-то вроде

  • start_time <= start_time_input <= end_time </li>
  • OR
  • start_time <= end_time_input <= end_time </li>
  • OR
  • (start_time_input <= start_time AND end_time <= end_time_input) </li>

2 способа, указанных в документах (http://code.google.com/appengine/docs/python/datastore/queries.html и http://code.google.com/appengine/docs/python/datastore/gqlqueryclass.html)as, я понял так:

filter_trips = db.GqlQuery ("ВЫБРАТЬ ключ ОТ ОТКЛЮЧЕНИЯ ГДЕ (start_time <=: start_time_input AND end_time> =: start_time_input) ИЛИ (start_time_input) = (start_time_input AND end_time_input AND end_time_input) ИЛИ (end_time_input) ИЛИ (end_time_input) start_time> =: start_time_input AND end_time <=: end_time_input) ", start_time_input = start_time_input, end_time_input = end_time_input) </p>

ошибка: ошибка разбора: неверный идентификатор WHERE в символе (

OR

filter_trips = db.GqlQuery ("ВЫБРАТЬ ключ ОТ ОТКЛЮЧЕНИЯ ГДЕ start_time <=: start_time_input <= end_time ИЛИ start_time <=: end_time_input <= end_time ИЛИ (: start_time_input <= start_time AND end_time <=: end_time_input) ", start_time_input = start_time_input, end_time_input = end_time_input) </p>

ошибка: ошибка синтаксического анализа: не ожидается никаких дополнительных символов в символе <= </p>

Пожалуйста, помогите!

1 Ответ

3 голосов
/ 22 мая 2011

GQL не имеет ИЛИ. Смотри http://code.google.com/appengine/docs/python/datastore/gqlreference.html

Вам нужно будет сделать это как несколько запросов.

...