Re: Time Intervals
От | Ross J. Reedstrom |
---|---|
Тема | Re: Time Intervals |
Дата | |
Msg-id | 20020213182241.GB10858@rice.edu обсуждение исходный текст |
Ответ на | Time Intervals ("Michael Richards" <michael@fastmail.ca>) |
Ответы |
How long does it take?
|
Список | pgsql-sql |
On Wed, Feb 13, 2002 at 11:53:33AM -0500, Michael Richards wrote: > I've got a rather odd problem that I can't seem to solve easily with > the given date manipulation functions. > > I've got an expiry timestamp and a renewal interval. If something has > expired it gets renewed as the expiry + renewal * n > Where n is the smallest number that will cause the calculation to > result in the future. > > So if I've got a resource that is renewed by the hour and it expired > last week then I need to add on enough hours so its new expiry will > be up to 1 hour in the future. Only trouble is this renewal period > can be anything from minutes to months and it may have expired up to > 6 months ago. > > If I could convert the timestamp into a julian of some sort perhaps I > could do the math that way. > > Any ideas? Hmm, If I undestand your problem correctly, it's actually pretty easy: you just need to see if expiry is in the past, and if it is, set it to current_timestamp + renewal_interval. If your doing the license expired detection in the frontend in a procedural language, just do a simple update. If you want to hide all that in the backend, you _still_ probably need to use a procedural language, such as pgpsql. Do you want to actually update the databse table with a new expiry, or just calculate one on the fly? Ross
В списке pgsql-sql по дате отправления: