1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-30 11:03:19 +03:00

Constructors for interval, timestamp, timestamptz

Author: Pavel Stěhule, editorialized somewhat by Álvaro Herrera
Reviewed-by: Tomáš Vondra, Marko Tiikkaja
With input from Fabrízio de Royes Mello, Jim Nasby
This commit is contained in:
Alvaro Herrera
2014-03-04 15:09:43 -03:00
parent af2543e884
commit 84df54b22e
14 changed files with 590 additions and 4 deletions

View File

@ -6720,6 +6720,32 @@ SELECT SUBSTRING('XY1234Z', 'Y*?([0-9]{1,3})');
<entry><literal>2013-07-15</literal></entry>
</row>
<row>
<entry>
<indexterm>
<primary>make_interval</primary>
</indexterm>
<literal>
<function>
make_interval(<parameter>years</parameter> <type>int</type> DEFAULT 0,
<parameter>months</parameter> <type>int</type> DEFAULT 0,
<parameter>weeks</parameter> <type>int</type> DEFAULT 0,
<parameter>days</parameter> <type>int</type> DEFAULT 0,
<parameter>hours</parameter> <type>int</type> DEFAULT 0,
<parameter>mins</parameter> <type>int</type> DEFAULT 0,
<parameter>secs</parameter> <type>double precision</type> DEFAULT 0.0)
</function>
</literal>
</entry>
<entry><type>interval</type></entry>
<entry>
Create interval from years, months, weeks, days, hours, minutes and
seconds fields
</entry>
<entry><literal>make_interval(days := 10)</literal></entry>
<entry><literal>10 days</literal></entry>
</row>
<row>
<entry>
<indexterm>
@ -6741,6 +6767,57 @@ SELECT SUBSTRING('XY1234Z', 'Y*?([0-9]{1,3})');
<entry><literal>08:15:23.5</literal></entry>
</row>
<row>
<entry>
<indexterm>
<primary>make_timestamp</primary>
</indexterm>
<literal>
<function>
make_timestamp(<parameter>year</parameter> <type>int</type>,
<parameter>month</parameter> <type>int</type>,
<parameter>day</parameter> <type>int</type>,
<parameter>hour</parameter> <type>int</type>,
<parameter>min</parameter> <type>int</type>,
<parameter>sec</parameter> <type>double precision</type>)
</function>
</literal>
</entry>
<entry><type>timestamp</type></entry>
<entry>
Create timestamp from year, month, day, hour, minute and seconds fields
</entry>
<entry><literal>make_timestamp(1-23, 7, 15, 8, 15, 23.5)</literal></entry>
<entry><literal>2013-07-15 08:15:23.5</literal></entry>
</row>
<row>
<entry>
<indexterm>
<primary>make_timestamptz</primary>
</indexterm>
<literal>
<function>
make_timestamptz(<parameter>year</parameter> <type>int</type>,
<parameter>month</parameter> <type>int</type>,
<parameter>day</parameter> <type>int</type>,
<parameter>hour</parameter> <type>int</type>,
<parameter>min</parameter> <type>int</type>,
<parameter>sec</parameter> <type>double precision</type>,
<optional> <parameter>timezone</parameter> <type>text</type> </optional>)
</function>
</literal>
</entry>
<entry><type>timestamp with time zone</type></entry>
<entry>
Create timestamp with time zone from year, month, day, hour, minute
and seconds fields. When <parameter>timezone</parameter> is not specified,
then current time zone is used.
</entry>
<entry><literal>make_timestamp(1-23, 7, 15, 8, 15, 23.5)</literal></entry>
<entry><literal>2013-07-15 08:15:23.5+01</literal></entry>
</row>
<row>
<entry>
<indexterm>