Clean up date_part tests a bit

Some tests for timestamp and timestamptz were in the date.sql test
file.  Move them to their appropriate files, or drop tests cases that
were already present there.
This commit is contained in:
Peter Eisentraut 2021-03-29 17:53:30 +02:00
parent f37fec837c
commit efcc7572f5
6 changed files with 147 additions and 235 deletions

View File

@ -971,18 +971,6 @@ SELECT EXTRACT(EPOCH FROM DATE '1970-01-01'); -- 0
0
(1 row)
SELECT EXTRACT(EPOCH FROM TIMESTAMP '1970-01-01'); -- 0
date_part
-----------
0
(1 row)
SELECT EXTRACT(EPOCH FROM TIMESTAMPTZ '1970-01-01+00'); -- 0
date_part
-----------
0
(1 row)
--
-- century
--
@ -1137,22 +1125,6 @@ SELECT EXTRACT(DECADE FROM DATE '0012-12-31 BC'); -- -2
-2
(1 row)
--
-- some other types:
--
-- on a timestamp.
SELECT EXTRACT(CENTURY FROM NOW())>=21 AS True; -- true
true
------
t
(1 row)
SELECT EXTRACT(CENTURY FROM TIMESTAMP '1970-03-20 04:30:00.00000'); -- 20
date_part
-----------
20
(1 row)
--
-- all possible fields
--
@ -1370,7 +1342,7 @@ select isfinite('infinity'::date), isfinite('-infinity'::date), isfinite('today'
(1 row)
--
-- oscillating fields from non-finite date/timestamptz:
-- oscillating fields from non-finite date:
--
SELECT EXTRACT(HOUR FROM DATE 'infinity'); -- NULL
date_part
@ -1384,30 +1356,6 @@ SELECT EXTRACT(HOUR FROM DATE '-infinity'); -- NULL
(1 row)
SELECT EXTRACT(HOUR FROM TIMESTAMP 'infinity'); -- NULL
date_part
-----------
(1 row)
SELECT EXTRACT(HOUR FROM TIMESTAMP '-infinity'); -- NULL
date_part
-----------
(1 row)
SELECT EXTRACT(HOUR FROM TIMESTAMPTZ 'infinity'); -- NULL
date_part
-----------
(1 row)
SELECT EXTRACT(HOUR FROM TIMESTAMPTZ '-infinity'); -- NULL
date_part
-----------
(1 row)
-- all possible fields
SELECT EXTRACT(MICROSECONDS FROM DATE 'infinity'); -- NULL
date_part
@ -1500,7 +1448,7 @@ SELECT EXTRACT(TIMEZONE_H FROM DATE 'infinity'); -- NULL
(1 row)
--
-- monotonic fields from non-finite date/timestamptz:
-- monotonic fields from non-finite date:
--
SELECT EXTRACT(EPOCH FROM DATE 'infinity'); -- Infinity
date_part
@ -1514,30 +1462,6 @@ SELECT EXTRACT(EPOCH FROM DATE '-infinity'); -- -Infinity
-Infinity
(1 row)
SELECT EXTRACT(EPOCH FROM TIMESTAMP 'infinity'); -- Infinity
date_part
-----------
Infinity
(1 row)
SELECT EXTRACT(EPOCH FROM TIMESTAMP '-infinity'); -- -Infinity
date_part
-----------
-Infinity
(1 row)
SELECT EXTRACT(EPOCH FROM TIMESTAMPTZ 'infinity'); -- Infinity
date_part
-----------
Infinity
(1 row)
SELECT EXTRACT(EPOCH FROM TIMESTAMPTZ '-infinity'); -- -Infinity
date_part
-----------
-Infinity
(1 row)
-- all possible fields
SELECT EXTRACT(YEAR FROM DATE 'infinity'); -- Infinity
date_part

View File

@ -931,75 +931,76 @@ SELECT d1 as "timestamp",
date_part( 'decade', d1) AS decade,
date_part( 'century', d1) AS century,
date_part( 'millennium', d1) AS millennium,
round(date_part( 'julian', d1)) AS julian
round(date_part( 'julian', d1)) AS julian,
date_part( 'epoch', d1) AS epoch
FROM TIMESTAMP_TBL;
timestamp | decade | century | millennium | julian
-----------------------------+-----------+-----------+------------+-----------
-infinity | -Infinity | -Infinity | -Infinity | -Infinity
infinity | Infinity | Infinity | Infinity | Infinity
Thu Jan 01 00:00:00 1970 | 197 | 20 | 2 | 2440588
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:02 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01.4 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01.5 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01.6 1997 | 199 | 20 | 2 | 2450491
Thu Jan 02 00:00:00 1997 | 199 | 20 | 2 | 2450451
Thu Jan 02 03:04:05 1997 | 199 | 20 | 2 | 2450451
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491
Tue Jun 10 17:32:01 1997 | 199 | 20 | 2 | 2450611
Sat Sep 22 18:19:20 2001 | 200 | 21 | 3 | 2452176
Wed Mar 15 08:14:01 2000 | 200 | 20 | 2 | 2451619
Wed Mar 15 13:14:02 2000 | 200 | 20 | 2 | 2451620
Wed Mar 15 12:14:03 2000 | 200 | 20 | 2 | 2451620
Wed Mar 15 03:14:04 2000 | 200 | 20 | 2 | 2451619
Wed Mar 15 02:14:05 2000 | 200 | 20 | 2 | 2451619
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:00 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491
Tue Jun 10 18:32:01 1997 | 199 | 20 | 2 | 2450611
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491
Tue Feb 11 17:32:01 1997 | 199 | 20 | 2 | 2450492
Wed Feb 12 17:32:01 1997 | 199 | 20 | 2 | 2450493
Thu Feb 13 17:32:01 1997 | 199 | 20 | 2 | 2450494
Fri Feb 14 17:32:01 1997 | 199 | 20 | 2 | 2450495
Sat Feb 15 17:32:01 1997 | 199 | 20 | 2 | 2450496
Sun Feb 16 17:32:01 1997 | 199 | 20 | 2 | 2450497
Tue Feb 16 17:32:01 0097 BC | -10 | -1 | -1 | 1686043
Sat Feb 16 17:32:01 0097 | 9 | 1 | 1 | 1756537
Thu Feb 16 17:32:01 0597 | 59 | 6 | 1 | 1939158
Tue Feb 16 17:32:01 1097 | 109 | 11 | 2 | 2121779
Sat Feb 16 17:32:01 1697 | 169 | 17 | 2 | 2340925
Thu Feb 16 17:32:01 1797 | 179 | 18 | 2 | 2377449
Tue Feb 16 17:32:01 1897 | 189 | 19 | 2 | 2413973
Sun Feb 16 17:32:01 1997 | 199 | 20 | 2 | 2450497
Sat Feb 16 17:32:01 2097 | 209 | 21 | 3 | 2487022
Wed Feb 28 17:32:01 1996 | 199 | 20 | 2 | 2450143
Thu Feb 29 17:32:01 1996 | 199 | 20 | 2 | 2450144
Fri Mar 01 17:32:01 1996 | 199 | 20 | 2 | 2450145
Mon Dec 30 17:32:01 1996 | 199 | 20 | 2 | 2450449
Tue Dec 31 17:32:01 1996 | 199 | 20 | 2 | 2450450
Wed Jan 01 17:32:01 1997 | 199 | 20 | 2 | 2450451
Fri Feb 28 17:32:01 1997 | 199 | 20 | 2 | 2450509
Sat Mar 01 17:32:01 1997 | 199 | 20 | 2 | 2450510
Tue Dec 30 17:32:01 1997 | 199 | 20 | 2 | 2450814
Wed Dec 31 17:32:01 1997 | 199 | 20 | 2 | 2450815
Fri Dec 31 17:32:01 1999 | 199 | 20 | 2 | 2451545
Sat Jan 01 17:32:01 2000 | 200 | 20 | 2 | 2451546
Sun Dec 31 17:32:01 2000 | 200 | 20 | 2 | 2451911
Mon Jan 01 17:32:01 2001 | 200 | 21 | 3 | 2451912
timestamp | decade | century | millennium | julian | epoch
-----------------------------+-----------+-----------+------------+-----------+--------------
-infinity | -Infinity | -Infinity | -Infinity | -Infinity | -Infinity
infinity | Infinity | Infinity | Infinity | Infinity | Infinity
Thu Jan 01 00:00:00 1970 | 197 | 20 | 2 | 2440588 | 0
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491 | 855595921
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491 | 855595921
Mon Feb 10 17:32:02 1997 | 199 | 20 | 2 | 2450491 | 855595922
Mon Feb 10 17:32:01.4 1997 | 199 | 20 | 2 | 2450491 | 855595921.4
Mon Feb 10 17:32:01.5 1997 | 199 | 20 | 2 | 2450491 | 855595921.5
Mon Feb 10 17:32:01.6 1997 | 199 | 20 | 2 | 2450491 | 855595921.6
Thu Jan 02 00:00:00 1997 | 199 | 20 | 2 | 2450451 | 852163200
Thu Jan 02 03:04:05 1997 | 199 | 20 | 2 | 2450451 | 852174245
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491 | 855595921
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491 | 855595921
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491 | 855595921
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491 | 855595921
Tue Jun 10 17:32:01 1997 | 199 | 20 | 2 | 2450611 | 865963921
Sat Sep 22 18:19:20 2001 | 200 | 21 | 3 | 2452176 | 1001182760
Wed Mar 15 08:14:01 2000 | 200 | 20 | 2 | 2451619 | 953108041
Wed Mar 15 13:14:02 2000 | 200 | 20 | 2 | 2451620 | 953126042
Wed Mar 15 12:14:03 2000 | 200 | 20 | 2 | 2451620 | 953122443
Wed Mar 15 03:14:04 2000 | 200 | 20 | 2 | 2451619 | 953090044
Wed Mar 15 02:14:05 2000 | 200 | 20 | 2 | 2451619 | 953086445
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491 | 855595921
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491 | 855595921
Mon Feb 10 17:32:00 1997 | 199 | 20 | 2 | 2450491 | 855595920
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491 | 855595921
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491 | 855595921
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491 | 855595921
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491 | 855595921
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491 | 855595921
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491 | 855595921
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491 | 855595921
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491 | 855595921
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491 | 855595921
Tue Jun 10 18:32:01 1997 | 199 | 20 | 2 | 2450611 | 865967521
Mon Feb 10 17:32:01 1997 | 199 | 20 | 2 | 2450491 | 855595921
Tue Feb 11 17:32:01 1997 | 199 | 20 | 2 | 2450492 | 855682321
Wed Feb 12 17:32:01 1997 | 199 | 20 | 2 | 2450493 | 855768721
Thu Feb 13 17:32:01 1997 | 199 | 20 | 2 | 2450494 | 855855121
Fri Feb 14 17:32:01 1997 | 199 | 20 | 2 | 2450495 | 855941521
Sat Feb 15 17:32:01 1997 | 199 | 20 | 2 | 2450496 | 856027921
Sun Feb 16 17:32:01 1997 | 199 | 20 | 2 | 2450497 | 856114321
Tue Feb 16 17:32:01 0097 BC | -10 | -1 | -1 | 1686043 | -65192711279
Sat Feb 16 17:32:01 0097 | 9 | 1 | 1 | 1756537 | -59102029679
Thu Feb 16 17:32:01 0597 | 59 | 6 | 1 | 1939158 | -43323575279
Tue Feb 16 17:32:01 1097 | 109 | 11 | 2 | 2121779 | -27545120879
Sat Feb 16 17:32:01 1697 | 169 | 17 | 2 | 2340925 | -8610906479
Thu Feb 16 17:32:01 1797 | 179 | 18 | 2 | 2377449 | -5455232879
Tue Feb 16 17:32:01 1897 | 189 | 19 | 2 | 2413973 | -2299559279
Sun Feb 16 17:32:01 1997 | 199 | 20 | 2 | 2450497 | 856114321
Sat Feb 16 17:32:01 2097 | 209 | 21 | 3 | 2487022 | 4011874321
Wed Feb 28 17:32:01 1996 | 199 | 20 | 2 | 2450143 | 825528721
Thu Feb 29 17:32:01 1996 | 199 | 20 | 2 | 2450144 | 825615121
Fri Mar 01 17:32:01 1996 | 199 | 20 | 2 | 2450145 | 825701521
Mon Dec 30 17:32:01 1996 | 199 | 20 | 2 | 2450449 | 851967121
Tue Dec 31 17:32:01 1996 | 199 | 20 | 2 | 2450450 | 852053521
Wed Jan 01 17:32:01 1997 | 199 | 20 | 2 | 2450451 | 852139921
Fri Feb 28 17:32:01 1997 | 199 | 20 | 2 | 2450509 | 857151121
Sat Mar 01 17:32:01 1997 | 199 | 20 | 2 | 2450510 | 857237521
Tue Dec 30 17:32:01 1997 | 199 | 20 | 2 | 2450814 | 883503121
Wed Dec 31 17:32:01 1997 | 199 | 20 | 2 | 2450815 | 883589521
Fri Dec 31 17:32:01 1999 | 199 | 20 | 2 | 2451545 | 946661521
Sat Jan 01 17:32:01 2000 | 200 | 20 | 2 | 2451546 | 946747921
Sun Dec 31 17:32:01 2000 | 200 | 20 | 2 | 2451911 | 978283921
Mon Jan 01 17:32:01 2001 | 200 | 21 | 3 | 2451912 | 978370321
(65 rows)
-- TO_CHAR()

View File

@ -1022,76 +1022,77 @@ SELECT d1 as timestamptz,
date_part( 'decade', d1) AS decade,
date_part( 'century', d1) AS century,
date_part( 'millennium', d1) AS millennium,
round(date_part( 'julian', d1)) AS julian
round(date_part( 'julian', d1)) AS julian,
date_part( 'epoch', d1) AS epoch
FROM TIMESTAMPTZ_TBL;
timestamptz | decade | century | millennium | julian
---------------------------------+-----------+-----------+------------+-----------
-infinity | -Infinity | -Infinity | -Infinity | -Infinity
infinity | Infinity | Infinity | Infinity | Infinity
Wed Dec 31 16:00:00 1969 PST | 196 | 20 | 2 | 2440588
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:02 1997 PST | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01.4 1997 PST | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01.5 1997 PST | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01.6 1997 PST | 199 | 20 | 2 | 2450491
Thu Jan 02 00:00:00 1997 PST | 199 | 20 | 2 | 2450451
Thu Jan 02 03:04:05 1997 PST | 199 | 20 | 2 | 2450451
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491
Tue Jun 10 17:32:01 1997 PDT | 199 | 20 | 2 | 2450611
Sat Sep 22 18:19:20 2001 PDT | 200 | 21 | 3 | 2452176
Wed Mar 15 08:14:01 2000 PST | 200 | 20 | 2 | 2451619
Wed Mar 15 04:14:02 2000 PST | 200 | 20 | 2 | 2451619
Wed Mar 15 02:14:03 2000 PST | 200 | 20 | 2 | 2451619
Wed Mar 15 03:14:04 2000 PST | 200 | 20 | 2 | 2451619
Wed Mar 15 01:14:05 2000 PST | 200 | 20 | 2 | 2451619
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:00 1997 PST | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491
Mon Feb 10 09:32:01 1997 PST | 199 | 20 | 2 | 2450490
Mon Feb 10 09:32:01 1997 PST | 199 | 20 | 2 | 2450490
Mon Feb 10 09:32:01 1997 PST | 199 | 20 | 2 | 2450490
Mon Feb 10 14:32:01 1997 PST | 199 | 20 | 2 | 2450491
Thu Jul 10 14:32:01 1997 PDT | 199 | 20 | 2 | 2450641
Tue Jun 10 18:32:01 1997 PDT | 199 | 20 | 2 | 2450611
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491
Tue Feb 11 17:32:01 1997 PST | 199 | 20 | 2 | 2450492
Wed Feb 12 17:32:01 1997 PST | 199 | 20 | 2 | 2450493
Thu Feb 13 17:32:01 1997 PST | 199 | 20 | 2 | 2450494
Fri Feb 14 17:32:01 1997 PST | 199 | 20 | 2 | 2450495
Sat Feb 15 17:32:01 1997 PST | 199 | 20 | 2 | 2450496
Sun Feb 16 17:32:01 1997 PST | 199 | 20 | 2 | 2450497
Tue Feb 16 17:32:01 0097 PST BC | -10 | -1 | -1 | 1686043
Sat Feb 16 17:32:01 0097 PST | 9 | 1 | 1 | 1756537
Thu Feb 16 17:32:01 0597 PST | 59 | 6 | 1 | 1939158
Tue Feb 16 17:32:01 1097 PST | 109 | 11 | 2 | 2121779
Sat Feb 16 17:32:01 1697 PST | 169 | 17 | 2 | 2340925
Thu Feb 16 17:32:01 1797 PST | 179 | 18 | 2 | 2377449
Tue Feb 16 17:32:01 1897 PST | 189 | 19 | 2 | 2413973
Sun Feb 16 17:32:01 1997 PST | 199 | 20 | 2 | 2450497
Sat Feb 16 17:32:01 2097 PST | 209 | 21 | 3 | 2487022
Wed Feb 28 17:32:01 1996 PST | 199 | 20 | 2 | 2450143
Thu Feb 29 17:32:01 1996 PST | 199 | 20 | 2 | 2450144
Fri Mar 01 17:32:01 1996 PST | 199 | 20 | 2 | 2450145
Mon Dec 30 17:32:01 1996 PST | 199 | 20 | 2 | 2450449
Tue Dec 31 17:32:01 1996 PST | 199 | 20 | 2 | 2450450
Wed Jan 01 17:32:01 1997 PST | 199 | 20 | 2 | 2450451
Fri Feb 28 17:32:01 1997 PST | 199 | 20 | 2 | 2450509
Sat Mar 01 17:32:01 1997 PST | 199 | 20 | 2 | 2450510
Tue Dec 30 17:32:01 1997 PST | 199 | 20 | 2 | 2450814
Wed Dec 31 17:32:01 1997 PST | 199 | 20 | 2 | 2450815
Fri Dec 31 17:32:01 1999 PST | 199 | 20 | 2 | 2451545
Sat Jan 01 17:32:01 2000 PST | 200 | 20 | 2 | 2451546
Sun Dec 31 17:32:01 2000 PST | 200 | 20 | 2 | 2451911
Mon Jan 01 17:32:01 2001 PST | 200 | 21 | 3 | 2451912
timestamptz | decade | century | millennium | julian | epoch
---------------------------------+-----------+-----------+------------+-----------+--------------
-infinity | -Infinity | -Infinity | -Infinity | -Infinity | -Infinity
infinity | Infinity | Infinity | Infinity | Infinity | Infinity
Wed Dec 31 16:00:00 1969 PST | 196 | 20 | 2 | 2440588 | 0
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491 | 855624721
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491 | 855624721
Mon Feb 10 17:32:02 1997 PST | 199 | 20 | 2 | 2450491 | 855624722
Mon Feb 10 17:32:01.4 1997 PST | 199 | 20 | 2 | 2450491 | 855624721.4
Mon Feb 10 17:32:01.5 1997 PST | 199 | 20 | 2 | 2450491 | 855624721.5
Mon Feb 10 17:32:01.6 1997 PST | 199 | 20 | 2 | 2450491 | 855624721.6
Thu Jan 02 00:00:00 1997 PST | 199 | 20 | 2 | 2450451 | 852192000
Thu Jan 02 03:04:05 1997 PST | 199 | 20 | 2 | 2450451 | 852203045
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491 | 855624721
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491 | 855624721
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491 | 855624721
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491 | 855624721
Tue Jun 10 17:32:01 1997 PDT | 199 | 20 | 2 | 2450611 | 865989121
Sat Sep 22 18:19:20 2001 PDT | 200 | 21 | 3 | 2452176 | 1001207960
Wed Mar 15 08:14:01 2000 PST | 200 | 20 | 2 | 2451619 | 953136841
Wed Mar 15 04:14:02 2000 PST | 200 | 20 | 2 | 2451619 | 953122442
Wed Mar 15 02:14:03 2000 PST | 200 | 20 | 2 | 2451619 | 953115243
Wed Mar 15 03:14:04 2000 PST | 200 | 20 | 2 | 2451619 | 953118844
Wed Mar 15 01:14:05 2000 PST | 200 | 20 | 2 | 2451619 | 953111645
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491 | 855624721
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491 | 855624721
Mon Feb 10 17:32:00 1997 PST | 199 | 20 | 2 | 2450491 | 855624720
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491 | 855624721
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491 | 855624721
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491 | 855624721
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491 | 855624721
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491 | 855624721
Mon Feb 10 09:32:01 1997 PST | 199 | 20 | 2 | 2450490 | 855595921
Mon Feb 10 09:32:01 1997 PST | 199 | 20 | 2 | 2450490 | 855595921
Mon Feb 10 09:32:01 1997 PST | 199 | 20 | 2 | 2450490 | 855595921
Mon Feb 10 14:32:01 1997 PST | 199 | 20 | 2 | 2450491 | 855613921
Thu Jul 10 14:32:01 1997 PDT | 199 | 20 | 2 | 2450641 | 868570321
Tue Jun 10 18:32:01 1997 PDT | 199 | 20 | 2 | 2450611 | 865992721
Mon Feb 10 17:32:01 1997 PST | 199 | 20 | 2 | 2450491 | 855624721
Tue Feb 11 17:32:01 1997 PST | 199 | 20 | 2 | 2450492 | 855711121
Wed Feb 12 17:32:01 1997 PST | 199 | 20 | 2 | 2450493 | 855797521
Thu Feb 13 17:32:01 1997 PST | 199 | 20 | 2 | 2450494 | 855883921
Fri Feb 14 17:32:01 1997 PST | 199 | 20 | 2 | 2450495 | 855970321
Sat Feb 15 17:32:01 1997 PST | 199 | 20 | 2 | 2450496 | 856056721
Sun Feb 16 17:32:01 1997 PST | 199 | 20 | 2 | 2450497 | 856143121
Tue Feb 16 17:32:01 0097 PST BC | -10 | -1 | -1 | 1686043 | -65192682479
Sat Feb 16 17:32:01 0097 PST | 9 | 1 | 1 | 1756537 | -59102000879
Thu Feb 16 17:32:01 0597 PST | 59 | 6 | 1 | 1939158 | -43323546479
Tue Feb 16 17:32:01 1097 PST | 109 | 11 | 2 | 2121779 | -27545092079
Sat Feb 16 17:32:01 1697 PST | 169 | 17 | 2 | 2340925 | -8610877679
Thu Feb 16 17:32:01 1797 PST | 179 | 18 | 2 | 2377449 | -5455204079
Tue Feb 16 17:32:01 1897 PST | 189 | 19 | 2 | 2413973 | -2299530479
Sun Feb 16 17:32:01 1997 PST | 199 | 20 | 2 | 2450497 | 856143121
Sat Feb 16 17:32:01 2097 PST | 209 | 21 | 3 | 2487022 | 4011903121
Wed Feb 28 17:32:01 1996 PST | 199 | 20 | 2 | 2450143 | 825557521
Thu Feb 29 17:32:01 1996 PST | 199 | 20 | 2 | 2450144 | 825643921
Fri Mar 01 17:32:01 1996 PST | 199 | 20 | 2 | 2450145 | 825730321
Mon Dec 30 17:32:01 1996 PST | 199 | 20 | 2 | 2450449 | 851995921
Tue Dec 31 17:32:01 1996 PST | 199 | 20 | 2 | 2450450 | 852082321
Wed Jan 01 17:32:01 1997 PST | 199 | 20 | 2 | 2450451 | 852168721
Fri Feb 28 17:32:01 1997 PST | 199 | 20 | 2 | 2450509 | 857179921
Sat Mar 01 17:32:01 1997 PST | 199 | 20 | 2 | 2450510 | 857266321
Tue Dec 30 17:32:01 1997 PST | 199 | 20 | 2 | 2450814 | 883531921
Wed Dec 31 17:32:01 1997 PST | 199 | 20 | 2 | 2450815 | 883618321
Fri Dec 31 17:32:01 1999 PST | 199 | 20 | 2 | 2451545 | 946690321
Sat Jan 01 17:32:01 2000 PST | 200 | 20 | 2 | 2451546 | 946776721
Sun Dec 31 17:32:01 2000 PST | 200 | 20 | 2 | 2451911 | 978312721
Mon Jan 01 17:32:01 2001 PST | 200 | 21 | 3 | 2451912 | 978399121
(66 rows)
SELECT d1 as timestamptz,

View File

@ -239,8 +239,6 @@ SELECT f1 as "date",
-- epoch
--
SELECT EXTRACT(EPOCH FROM DATE '1970-01-01'); -- 0
SELECT EXTRACT(EPOCH FROM TIMESTAMP '1970-01-01'); -- 0
SELECT EXTRACT(EPOCH FROM TIMESTAMPTZ '1970-01-01+00'); -- 0
--
-- century
--
@ -276,12 +274,6 @@ SELECT EXTRACT(DECADE FROM DATE '0002-12-31 BC'); -- -1
SELECT EXTRACT(DECADE FROM DATE '0011-01-01 BC'); -- -1
SELECT EXTRACT(DECADE FROM DATE '0012-12-31 BC'); -- -2
--
-- some other types:
--
-- on a timestamp.
SELECT EXTRACT(CENTURY FROM NOW())>=21 AS True; -- true
SELECT EXTRACT(CENTURY FROM TIMESTAMP '1970-03-20 04:30:00.00000'); -- 20
--
-- all possible fields
--
SELECT EXTRACT(MICROSECONDS FROM DATE '2020-08-11');
@ -327,14 +319,10 @@ select 'infinity'::date > 'today'::date as t;
select '-infinity'::date < 'today'::date as t;
select isfinite('infinity'::date), isfinite('-infinity'::date), isfinite('today'::date);
--
-- oscillating fields from non-finite date/timestamptz:
-- oscillating fields from non-finite date:
--
SELECT EXTRACT(HOUR FROM DATE 'infinity'); -- NULL
SELECT EXTRACT(HOUR FROM DATE '-infinity'); -- NULL
SELECT EXTRACT(HOUR FROM TIMESTAMP 'infinity'); -- NULL
SELECT EXTRACT(HOUR FROM TIMESTAMP '-infinity'); -- NULL
SELECT EXTRACT(HOUR FROM TIMESTAMPTZ 'infinity'); -- NULL
SELECT EXTRACT(HOUR FROM TIMESTAMPTZ '-infinity'); -- NULL
-- all possible fields
SELECT EXTRACT(MICROSECONDS FROM DATE 'infinity'); -- NULL
SELECT EXTRACT(MILLISECONDS FROM DATE 'infinity'); -- NULL
@ -352,14 +340,10 @@ SELECT EXTRACT(TIMEZONE FROM DATE 'infinity'); -- NULL
SELECT EXTRACT(TIMEZONE_M FROM DATE 'infinity'); -- NULL
SELECT EXTRACT(TIMEZONE_H FROM DATE 'infinity'); -- NULL
--
-- monotonic fields from non-finite date/timestamptz:
-- monotonic fields from non-finite date:
--
SELECT EXTRACT(EPOCH FROM DATE 'infinity'); -- Infinity
SELECT EXTRACT(EPOCH FROM DATE '-infinity'); -- -Infinity
SELECT EXTRACT(EPOCH FROM TIMESTAMP 'infinity'); -- Infinity
SELECT EXTRACT(EPOCH FROM TIMESTAMP '-infinity'); -- -Infinity
SELECT EXTRACT(EPOCH FROM TIMESTAMPTZ 'infinity'); -- Infinity
SELECT EXTRACT(EPOCH FROM TIMESTAMPTZ '-infinity'); -- -Infinity
-- all possible fields
SELECT EXTRACT(YEAR FROM DATE 'infinity'); -- Infinity
SELECT EXTRACT(DECADE FROM DATE 'infinity'); -- Infinity

View File

@ -256,7 +256,8 @@ SELECT d1 as "timestamp",
date_part( 'decade', d1) AS decade,
date_part( 'century', d1) AS century,
date_part( 'millennium', d1) AS millennium,
round(date_part( 'julian', d1)) AS julian
round(date_part( 'julian', d1)) AS julian,
date_part( 'epoch', d1) AS epoch
FROM TIMESTAMP_TBL;
-- TO_CHAR()

View File

@ -262,7 +262,8 @@ SELECT d1 as timestamptz,
date_part( 'decade', d1) AS decade,
date_part( 'century', d1) AS century,
date_part( 'millennium', d1) AS millennium,
round(date_part( 'julian', d1)) AS julian
round(date_part( 'julian', d1)) AS julian,
date_part( 'epoch', d1) AS epoch
FROM TIMESTAMPTZ_TBL;
SELECT d1 as timestamptz,