ИЛИ Ошибка возврата условия в GQL (механизм приложений Google) Почему? - PullRequest
1 голос
/ 02 июня 2011

Когда я использую условие OR в GQL, оно возвращает ошибку messege tht " BadQueryError: Ошибка разбора: не ожидается никаких дополнительных символов в символе ИЛИ . Почему?

db.GqlQuery("Select * from vendor where access='public' OR organisation_id='"+ orgid +"'")

1 Ответ

3 голосов
/ 02 июня 2011
    GQL does not have an OR operator. However, it does have an IN operator, 
which provides a limited form of OR.

В Документах четко сказано, что в GQL нет оператора ИЛИ.

Вы можете сделать что-то вроде этого ... Сделать два запроса и объединить результаты ...

  vendors=vendor.all()
  pub_vendors = vendors.filter("access = ","public")
  vendors=vendor.all()
  org_vendors = vendors.filter("organisation_id = ",orgid)
  results = pub_vendors.extend(org_vendors)
...