Запрос AppEngine Datastore с неравенством и сортировкой (другой атрибут).Обходной путь? - PullRequest
0 голосов
/ 05 января 2012

Эй, ребята, я знаю, что это старая проблема, но мне интересно, есть ли какие-нибудь новости об этом: У меня есть простой запрос, где я хочу сделать:

фильтр ('созданный> =', somedatetime) .order ('- счетчик')

Я пытался: filter ('созданный> =', somedatetime) .order ('- созданный'). Order ('- counter'), но так как созданный является датой, результаты довольно плохие.

Пользователь может просматривать список с бесконечной прокруткой, и мы можем выбрать временной интервал 7,30,90 дней, но, похоже, я не могу выполнить этот очень простой запрос.

Я думал о разрыве, созданном для двух атрибутов (dayofyear, year), чтобы я мог использовать оператор IN, но это может быть сложно, так как у меня около 2 миллионов записей.

Есть идеи?

1 Ответ

2 голосов
/ 05 января 2012

Нет, тут нет пути.Это ограничение существует из-за того, как строятся индексы.Вам просто нужно будет выполнить сортировку или фильтрацию в памяти, как это сделали бы другие базы данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...