Google JSON API и GQL. Получить объекты по диапазону дат

Я пытаюсь найти объекты в хранилище данных Google через GQL и JSON API по диапазону дат. Например, это мой запрос:

SELECT * FROM table WHERE uuid = "test" AND start >= 100 AND end <= 150

Но я получаю ошибку:

{ errors: 
  [ { domain: 'global',
   reason: 'INVALID_ARGUMENT',
   message: 'can\'t have inequality filters on different properties: [start, end]' } ],
  code: 400,
  message: 'can\'t have inequality filters on different properties: [start, end]' }

Могу ли я отредактировать этот запрос или использовать другой способ получения объектов по диапазону дат?


person MrPovod    schedule 10.05.2014    source источник
comment
comment
Нет, я использую nodejs и JSON API.   -  person MrPovod    schedule 15.05.2014
comment
Cloud Datastore поддерживается той же реализацией и поддерживает фильтры неравенства только для одного свойства: Developers.google.com/datastore/docs/concepts/   -  person Ed Davisson    schedule 16.05.2014


Ответы (1)


У вас есть два оператора неравенства в одном запросе, который не поддерживается хранилищем данных/gql.

"начало >= 100 И конец ‹= 150"

У вас может быть «начало> = 100 И начало ‹ = 150»

но не одновременно начало и конец.

Одно из решений заключается в том, что вам нужно установить только одно неравенство в запросе GQL и вручную отфильтровать результаты для второго неравенства.

person sradforth    schedule 19.01.2016