I don't like this "Restrictions on Queries" :-(

On Aug 28, 10:26 pm, Nevin Freeman <[EMAIL PROTECTED]> wrote:
> From:http://code.google.com/appengine/docs/datastore/queriesandindexes.html
>
> "The query mechanism relies on all results for a query to be adjacent
> to one another in the index table, to avoid having to scan the entire
> table for results. A single index table cannot represent multiple
> inequality filters on multiple properties while maintaining that all
> results are consecutive in the table."
>
> Nevin
>
> On Aug 28, 1:23 pm, Davide Rognoni <[EMAIL PROTECTED]> wrote:
>
> > Why this limitation?
>
> > On Aug 28, 10:17 pm, Nevin Freeman <[EMAIL PROTECTED]> wrote:
>
> > > José,
>
> > > Many different workarounds are available, depending on your
> > > circumstances. The simplest (not ideal) thing to do would be to run
> > > two queries and then take the intersection of the two results, i.e.:
>
> > > q1 = Model.gql("WHERE prop1 < :1", number1)
> > > q2 = Model.gql("WHERE prop2 > :1", number2)
>
> > > batch1 = q1.fetch(1000)
> > > batch2 = q2.fetch(1000)
> > > result = []
>
> > > for entity in batch1:
> > >   if entity in batch2:
> > >     result.append(entity)
>
> > > return result
>
> > > If you give us a little more context, maybe people who have similar
> > > situations can share with you how they have dealt with the limitation.
> > > In my case, I had to change the way I store my data so that I can get
> > > the right results with only one inequality operator per query (but
> > > name equality operators).
>
> > > Nevin
>
> > > On Aug 28, 12:07 pm, fdezjose <[EMAIL PROTECTED]> wrote:
>
> > > > Hello! I'm new in the App Engine world and I've run into an issue
> > > > that's driving me crazy. I need to compare two properties (ex.
> > > > propertyA > 4 AND propertyB > 8) But by doing that I've discovered
> > > > that only one property per query may have inequality filters... Any
> > > > suggestion or workaround to be able to accomplish this task?
>
> > > > Thanks!
>
> > > > José Luis
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to