On Feb 3, 7:59 am, Rick <[email protected]> wrote:
> I'm confused. If this statement (GQL query is not allowed, because it
> uses inequality filters on two different properties in the same query)
> holds then how am I to do a Calendar type app and query the DataStore
> for all events that occur within a 30 day window?  Isn't that
> something like:
>
> Select * from Calendar where beginDate >= beginofDateRange and endDate
> <= endofDateRange

as you've written it, this query is probably more expressive than you
need it to be. if you s/endDate/beginDate/, ie compare beginDate to
*both* of the range endpoints, you'll be able to run it. if you
absolutely need to query for events that occur entirely within the
endpoints, you could do the same query and post-process the results by
filtering out entities with endDate > endofDateRange in memory. if you
don't want to post-process, though, you're right, you can't do this
exact query entirely within the datastore.

> How could I do that? How does Google Calendar do that?

google calendar doesn't run on app engine, so it's not subject to the
same limitations as app engine. i'd also reiterate that while the app
engine datastore is based on bigtable, they're still very different
beasts. the datastore provides many additional (and different)
features, guarantees, and capabilities, including the query planner
and API. details in 
http://sites.google.com/site/io/under-the-covers-of-the-google-app-engine-datastore
.

>
> Thanks,
> Rick
--~--~---------~--~----~------------~-------~--~----~
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