Thanks for your suggestions Jim.

Unfortunately, I have to count out GeoCouch for now and your first suggestion doesn't satisfy my requirements. It would yield the events for a particular day, but not for all following days, requiring more connections to the db which I want to avoid for a mobile app.

Before posting I have tried a couple days to find a clean solution, but came up with the start_date as key. It gives me all events, including past events, and the hard work has to be done on client side.

My finding works, just have the feeling there is a more efficient way.

Stephan


On 12-04-27 11:38 AM, Jim Klo wrote:
There's a whole bunch of ways to do that... but here are 2:

1. create a map function that emits all the days of the event as keys - the searching for any particular day would yield those events 2. use geocouch, store the start & end dates as a box, then you can use the current date as a bbox to find all events that overlap. Using this method, you'd want to store time as an integer value and not a string.

IMHO #2 is probably a cleaner approach, but requires GeoCouch.

- Jim

*
*
*
*Jim Klo*
Senior Software Engineer
Center for Software Engineering
SRI International
*
*
*

On Apr 27, 2012, at 11:19 AM, Stephan Bardubitzki wrote:

I have a database of events and since events can be multi-day events all documents have a start_date and end_date. Now I want to get all events that happen today and those that are starting in the coming days.

How should I determine if today is in the range of start_date and end_date?

To make things more complex an event can be assigned to one or more categories such as sports, music etc. So the next task would be to get all events of a certain category that happen today and in the coming days.

Since a db of events might be a common task I hope someone has already come up with a solution.

Any advice would be greatly appreciated.

Stephan


Reply via email to