Hi,

I've got a stack of tasks to show in a list.
Every task has a timestamp X that may be NULL or a date. It contains the date when this tasks should be done.
Sometimes it has date and the time-part, too.


The list should be like this:
1)   X  sometime today should come first in ascending time order.
2) X in the past should show up after (1) in descending order so that not so long back dates come first
3)   X  =  NULL
4)   X sometime in the future

The point is, I like to do the skeduled tasks for today as planned. = (1)

Those allready lost appointments should not defer those today that are still in time but I like to get them after the today-tasks in an order where there is a chance that a nearer lost appointment might be still rescued even though it's a bit late. The dates longer back might be lost for good anyway so they can wait a bit longer. = (2)

Provided I get through (1) and (2) I'd venture the unknown where there wasn't a date until now. = (3)

Well, and future dates will be minded when their time is there. = (4)


For now I do this by having a sorting-column in the tasks-table that gets updated in 4 steps where my application has to select every group (1) - (4) then sequentially walk through the recordset and update the sort-order-column by a counter.
Later I sort ascending by the sort-order-column.
It kind of works but I consider it ugly.

Could you provide a clever solution?


---------------------------(end of broadcast)---------------------------
TIP 7: You can help support the PostgreSQL project by donating at

               http://www.postgresql.org/about/donate

Reply via email to