Time range

Started by Donald Shtjefniover 6 years ago5 messages
#1Donald Shtjefni
dnld.sht@gmail.com

Hi,

I was wondering why there is not a type Range of time without time zone, I
think it may be useful for someone, Is good if i do PR.

Sorry if I've worte in the wrong place

#2Tomas Vondra
tomas.vondra@2ndquadrant.com
In reply to: Donald Shtjefni (#1)
Re: Time range

On Fri, May 31, 2019 at 08:35:31AM +0200, Donald Shtjefni wrote:

Hi,

I was wondering why there is not a type Range of time without time zone, I
think it may be useful for someone, Is good if i do PR.

Sorry if I've worte in the wrong place

Doesn't tsrange already do that? That's a timestamp without timezone range
type.

regards

--
Tomas Vondra http://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

#3Thomas Kellerer
shammat@gmx.net
In reply to: Donald Shtjefni (#1)
Re: Time range

Donald Shtjefni schrieb am 31.05.2019 um 13:35:

I was wondering why there is not a type Range of time without time zone, I think it may be useful for someone, Is good if i do PR.

you can easily create one:

create type timerange as range (subtype = time);

Thomas

#4Isaac Morland
isaac.morland@gmail.com
In reply to: Thomas Kellerer (#3)
Re: Time range

timetzrange is also missing. In my database I have:

CREATE TYPE timerange AS RANGE (SUBTYPE = time);
COMMENT ON TYPE timerange IS 'range of times without time zone';
GRANT USAGE ON TYPE timerange TO PUBLIC;

CREATE TYPE timetzrange AS RANGE (SUBTYPE = timetz);
COMMENT ON TYPE timetzrange IS 'range of times with time zone';
GRANT USAGE ON TYPE timetzrange TO PUBLIC;

The intent is that these range types are the same as if they were built in.
I don't believe I have ever used timetzrange but I did it for completeness.

Given that other built-in types have built-in range types, I think that the
time and timetz types should also have built-in range types.

On Fri, 31 May 2019 at 11:40, Thomas Kellerer <shammat@gmx.net> wrote:

Show quoted text

Donald Shtjefni schrieb am 31.05.2019 um 13:35:

I was wondering why there is not a type Range of time without time zone,

I think it may be useful for someone, Is good if i do PR.

you can easily create one:

create type timerange as range (subtype = time);

Thomas

#5Tom Lane
tgl@sss.pgh.pa.us
In reply to: Isaac Morland (#4)
Re: Time range

Isaac Morland <isaac.morland@gmail.com> writes:

Given that other built-in types have built-in range types, I think that the
time and timetz types should also have built-in range types.

There's only a very small number of built-in range types:

postgres=# select typname from pg_type where typtype = 'r' order by 1;
typname
-----------
daterange
int4range
int8range
numrange
tsrange
tstzrange
(6 rows)

I don't think there's any appetite for creating built-in range types
across-the-board. The time and timetz types are pretty little used
(with good reason), so leaving them out of this list seems fine to me.

regards, tom lane