Re: Absolute value of intervals
От | Lew |
---|---|
Тема | Re: Absolute value of intervals |
Дата | |
Msg-id | hcil3o$o2q$1@news.albasani.net обсуждение исходный текст |
Ответ на | Re: Absolute value of intervals (Tom Lane <tgl@sss.pgh.pa.us>) |
Список | pgsql-general |
Tom Lane wrote: > Sam Mason <sam@samason.me.uk> writes: >> On Tue, Oct 27, 2009 at 11:27:17AM -0300, Joshua Berry wrote: >>> I couldn't find the operator '@' for intervals > >> A simple SQL implementation would look like: > >> CREATE FUNCTION absinterval(interval) RETURNS interval >> IMMUTABLE LANGUAGE sql AS 'SELECT greatest($1,-$1)'; >> CREATE OPERATOR @ ( PROCEDURE = absinterval, RIGHTARG = interval ); > >> or is a C version really needed? > > I think this came up again recently and somebody pointed out that the > correct definition isn't as obvious as all that. The components of > an interval can have different signs, so should abs('-1 day 1 hour') be > '1 day -1 hour' or '1 day 1 hour'? Or what about corner cases like > '1 day -25 hours'? I'm writing this at about 8:35 p.m. New York time on October 31, 2009. From now, adding interval '1 day -25 hours' yields right now, New York time. -- Lew
В списке pgsql-general по дате отправления: