From a64d3bc4335ceabcf2122cb488c88edfa88b12ab Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Sun, 6 Feb 2000 05:09:42 +0000 Subject: [PATCH] Solaris has always had problems with 1947 in the regression tests so I prepared a set of expected files to make things look OK. There's also a file to account for minor variations in the geopmetry output and a resultmap patch to pull them all together. With these changes PostgreSQL, from CVS, builds and regression tests (runcheck) cleanly. Keith Parks. --- doc/src/sgml/catalogs.sgml | 4 +- doc/src/sgml/legal.sgml | 4 +- .../expected/test-gr-char.sql.out | 105 +- .../expected/test-gr-select.sql.out | 17 +- .../expected/test-gr-text.sql.out | 105 +- .../expected/test-gr-varchar.sql.out | 105 +- src/test/locale/gr_GR.ISO8859-7/runall | 4 +- .../koi8-r/expected/test-koi8-char.sql.out | 105 +- .../koi8-r/expected/test-koi8-select.sql.out | 13 +- .../koi8-r/expected/test-koi8-text.sql.out | 105 +- .../koi8-r/expected/test-koi8-varchar.sql.out | 105 +- src/test/locale/koi8-r/runall | 4 +- .../expected/test-koi8-char.sql.out | 105 +- .../expected/test-koi8-select.sql.out | 13 +- .../expected/test-koi8-sort.out | 4 +- .../expected/test-koi8-text.sql.out | 105 +- .../expected/test-koi8-varchar.sql.out | 105 +- src/test/locale/koi8-to-win1251/runall | 4 +- .../regress/expected/abstime-solaris-1947.out | 175 ++ .../expected/geometry-solaris-precision.out | 532 ++++++ .../expected/horology-solaris-1947.out | 1588 +++++++++++++++++ .../expected/tinterval-solaris-1947.out | 168 ++ src/test/regress/resultmap | 6 + 23 files changed, 2969 insertions(+), 512 deletions(-) create mode 100644 src/test/regress/expected/abstime-solaris-1947.out create mode 100644 src/test/regress/expected/geometry-solaris-precision.out create mode 100644 src/test/regress/expected/horology-solaris-1947.out create mode 100644 src/test/regress/expected/tinterval-solaris-1947.out diff --git a/doc/src/sgml/catalogs.sgml b/doc/src/sgml/catalogs.sgml index d0edf22daa..f4dd09d88a 100644 --- a/doc/src/sgml/catalogs.sgml +++ b/doc/src/sgml/catalogs.sgml @@ -1,6 +1,6 @@ .\" This is -*-nroff-*- .\" XXX standard disclaimer belongs here.... -.\" $Header: /cvsroot/pgsql/doc/src/sgml/catalogs.sgml,v 2.3 2000/01/22 23:50:08 tgl Exp $ +.\" $Header: /cvsroot/pgsql/doc/src/sgml/catalogs.sgml,v 2.4 2000/02/06 05:09:31 momjian Exp $ .TH "SYSTEM CATALOGS" INTRO 03/13/94 PostgreSQL PostgreSQL .SH "Section 7 - System Catalogs" .de LS @@ -28,7 +28,7 @@ These catalogs form the core of the extensibility system: pg_amproc local procedures used with specific access methods pg_attribute local class attributes pg_class local classes - pg_index local secondary indices + pg_index local indices pg_inherits local class inheritance hierarchy pg_language local procedure implementation languages pg_opclass local operator classes diff --git a/doc/src/sgml/legal.sgml b/doc/src/sgml/legal.sgml index 0be667e199..278dc962e8 100644 --- a/doc/src/sgml/legal.sgml +++ b/doc/src/sgml/legal.sgml @@ -2,8 +2,8 @@ Copyrights and Trademarks - PostgreSQL is Copyright © 1996-9 - by the PostgreSQL Global Development Group, + PostgreSQL is Copyright © 1996-2000 + by the PostgreSQL Inc. and is distributed under the terms of the Berkeley license. diff --git a/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-char.sql.out b/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-char.sql.out index 302a2ecc75..eb62e52c82 100644 --- a/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-char.sql.out +++ b/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-char.sql.out @@ -1,55 +1,54 @@ -abbrev|name_en |name_gr -------+--------------------+------------------------------------------------------------ -AK |Alaska |ÁëÜóêá -AL |Alabama |ÁëáìðÜìá -AZ |Arizona |Áñéæüíá -AR |Arkansas |Áñêáíóáò -ID |Idaho |Áúíôá÷ï -IA |Iowa |Áúüâá -VT |Vermont |Âåñìüíô -VA |Virginia |Âéñôæßíéá -NC |North Carolina |Âüñåéá Êáñïëßíá -ND |North Dakota |Âüñåéá Íôáêüôá -UT |Utah |Ãéïýôá -WY |Wyoming |Ãïõáúüìéíãê -WV |West Virginia |Ãïõåóô Âéñôæßíéá -WI |Wisconsin |Ãïõéóêüíóéí -WA |Washington |Ãïõüóéíãêôïí -DC |Washington DC |Ãïõüóéíãôïí Íôß Óé -IL |Illinois |Éëëéíüéò -IN |Indiana |ÉíôéÜíá -KA |Kansas |ÊÜíóáò -CA |California |Êáëéöüñíéá -KY |Kentucky |ÊåíôÜêé -CO |Colorado |ÊïëïñÜíôï -CT |Connecticut |ÊïííÝêôéêáô -LA |Louisiana |ËïõúæéÜíá -ME |Maine |ÌÝéí -MI |Michigan |Ìßôóéãêáí -MD |Maryland |Ìáßñõëáíô -MA |Massachusetts |Ìáóóá÷ïõóÝôç -MN |Minnesota |Ìéíåóóüôá -MS |Mississippi |Ìéóéóóßðé -MO |Missouri |Ìéóóïýñé -MT |Montana |ÌïíôÜíá -NJ |New Jersey |ÍÝá ÕåñóÝç -NY |New York |ÍÝá Õüñêç -NM |New Mexico |ÍÝï Ìåîéêü -NH |New Hampshire |ÍÝï ×Üìðóáúñ -NV |Nevada |ÍåâÜäá -NE |Nebraska |ÍåìðñÜóêá -DE |Delaware |ÍôÝëáãïõåñ -SC |South Carolina |Íüôéá Êáñïëßíá -SD |South Dakota |Íüôéá Íôáêüôá -OK |Oklahoma |Ïêëá÷üìá -OR |Oregon |Ïñåãêïí -OH |Ohio |Ï÷Üéï -PA |Pennsylvania |ÐåííóõëâÜíéá -RI |Rhode Island |Ñüïõíô Áúëáíô -TX |Texas |ÔÝîáò -TN |Tennessee |Ôåííåóß -GA |Georgia |Ôæüñôæéá -FL |Florida |Öëüñéíôá + abbrev | name_en | name_gr +--------+----------------------+-------------------------------------------------------------- + ID | Idaho | Áúíôá÷ï + IA | Iowa | Áúüâá + AL | Alabama | ÁëáìðÜìá + AK | Alaska | ÁëÜóêá + AZ | Arizona | Áñéæüíá + AR | Arkansas | Áñêáíóáò + VT | Vermont | Âåñìüíô + VA | Virginia | Âéñôæßíéá + NC | North Carolina | Âüñåéá Êáñïëßíá + ND | North Dakota | Âüñåéá Íôáêüôá + FL | Florida | Öëüñéíôá + IL | Illinois | Éëëéíüéò + IN | Indiana | ÉíôéÜíá + CA | California | Êáëéöüñíéá + KY | Kentucky | ÊåíôÜêé + CO | Colorado | ÊïëïñÜíôï + CT | Connecticut | ÊïííÝêôéêáô + KA | Kansas | ÊÜíóáò + LA | Louisiana | ËïõúæéÜíá + MA | Massachusetts | Ìáóóá÷ïõóÝôç + MD | Maryland | Ìáßñõëáíô + MN | Minnesota | Ìéíåóóüôá + MS | Mississippi | Ìéóéóóßðé + MO | Missouri | Ìéóóïýñé + MT | Montana | ÌïíôÜíá + ME | Maine | ÌÝéí + MI | Michigan | Ìßôóéãêáí + NV | Nevada | ÍåâÜäá + NE | Nebraska | ÍåìðñÜóêá + DE | Delaware | ÍôÝëáãïõåñ + NJ | New Jersey | ÍÝá ÕåñóÝç + NY | New York | ÍÝá Õüñêç + NH | New Hampshire | ÍÝï ×Üìðóáúñ + NM | New Mexico | ÍÝï Ìåîéêü + SC | South Carolina | Íüôéá Êáñïëßíá + SD | South Dakota | Íüôéá Íôáêüôá + OH | Ohio | Ï÷Üéï + OK | Oklahoma | Ïêëá÷üìá + OR | Oregon | Ïñåãêïí + PA | Pennsylvania | ÐåííóõëâÜíéá + TN | Tennessee | Ôåííåóß + GA | Georgia | Ôæüñôæéá + TX | Texas | ÔÝîáò + UT | Utah | Ãéïýôá + WY | Wyoming | Ãïõáúüìéíãê + WV | West Virginia | Ãïõåóô Âéñôæßíéá + WI | Wisconsin | Ãïõéóêüíóéí + WA | Washington | Ãïõüóéíãêôïí + DC | Washington DC | Ãïõüóéíãôïí Íôß Óé + RI | Rhode Island | Ñüïõíô Áúëáíô (50 rows) -EOF diff --git a/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-select.sql.out b/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-select.sql.out index d77585fdd7..abfce69f28 100644 --- a/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-select.sql.out +++ b/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-select.sql.out @@ -1,11 +1,10 @@ -abbrev|name_en |name_gr -------+--------------------+------------------ -UT |Utah |Ãéïýôá -WY |Wyoming |Ãïõáúüìéíãê -WV |West Virginia |Ãïõåóô Âéñôæßíéá -WI |Wisconsin |Ãïõéóêüíóéí -WA |Washington |Ãïõüóéíãêôïí -DC |Washington DC |Ãïõüóéíãôïí Íôß Óé + abbrev | name_en | name_gr +--------+----------------------+-------------------- + UT | Utah | Ãéïýôá + WY | Wyoming | Ãïõáúüìéíãê + WV | West Virginia | Ãïõåóô Âéñôæßíéá + WI | Wisconsin | Ãïõéóêüíóéí + WA | Washington | Ãïõüóéíãêôïí + DC | Washington DC | Ãïõüóéíãôïí Íôß Óé (6 rows) -EOF diff --git a/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-text.sql.out b/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-text.sql.out index ce18789da0..0a128a7913 100644 --- a/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-text.sql.out +++ b/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-text.sql.out @@ -1,55 +1,54 @@ -abbrev|name_en |name_gr -------+--------------------+------------------ -AK |Alaska |ÁëÜóêá -AL |Alabama |ÁëáìðÜìá -AZ |Arizona |Áñéæüíá -AR |Arkansas |Áñêáíóáò -ID |Idaho |Áúíôá÷ï -IA |Iowa |Áúüâá -VT |Vermont |Âåñìüíô -VA |Virginia |Âéñôæßíéá -NC |North Carolina |Âüñåéá Êáñïëßíá -ND |North Dakota |Âüñåéá Íôáêüôá -UT |Utah |Ãéïýôá -WY |Wyoming |Ãïõáúüìéíãê -WV |West Virginia |Ãïõåóô Âéñôæßíéá -WI |Wisconsin |Ãïõéóêüíóéí -WA |Washington |Ãïõüóéíãêôïí -DC |Washington DC |Ãïõüóéíãôïí Íôß Óé -IL |Illinois |Éëëéíüéò -IN |Indiana |ÉíôéÜíá -KA |Kansas |ÊÜíóáò -CA |California |Êáëéöüñíéá -KY |Kentucky |ÊåíôÜêé -CO |Colorado |ÊïëïñÜíôï -CT |Connecticut |ÊïííÝêôéêáô -LA |Louisiana |ËïõúæéÜíá -ME |Maine |ÌÝéí -MI |Michigan |Ìßôóéãêáí -MD |Maryland |Ìáßñõëáíô -MA |Massachusetts |Ìáóóá÷ïõóÝôç -MN |Minnesota |Ìéíåóóüôá -MS |Mississippi |Ìéóéóóßðé -MO |Missouri |Ìéóóïýñé -MT |Montana |ÌïíôÜíá -NJ |New Jersey |ÍÝá ÕåñóÝç -NY |New York |ÍÝá Õüñêç -NM |New Mexico |ÍÝï Ìåîéêü -NH |New Hampshire |ÍÝï ×Üìðóáúñ -NV |Nevada |ÍåâÜäá -NE |Nebraska |ÍåìðñÜóêá -DE |Delaware |ÍôÝëáãïõåñ -SC |South Carolina |Íüôéá Êáñïëßíá -SD |South Dakota |Íüôéá Íôáêüôá -OK |Oklahoma |Ïêëá÷üìá -OR |Oregon |Ïñåãêïí -OH |Ohio |Ï÷Üéï -PA |Pennsylvania |ÐåííóõëâÜíéá -RI |Rhode Island |Ñüïõíô Áúëáíô -TX |Texas |ÔÝîáò -TN |Tennessee |Ôåííåóß -GA |Georgia |Ôæüñôæéá -FL |Florida |Öëüñéíôá + abbrev | name_en | name_gr +--------+----------------------+-------------------- + ID | Idaho | Áúíôá÷ï + IA | Iowa | Áúüâá + AL | Alabama | ÁëáìðÜìá + AK | Alaska | ÁëÜóêá + AZ | Arizona | Áñéæüíá + AR | Arkansas | Áñêáíóáò + VT | Vermont | Âåñìüíô + VA | Virginia | Âéñôæßíéá + NC | North Carolina | Âüñåéá Êáñïëßíá + ND | North Dakota | Âüñåéá Íôáêüôá + FL | Florida | Öëüñéíôá + IL | Illinois | Éëëéíüéò + IN | Indiana | ÉíôéÜíá + CA | California | Êáëéöüñíéá + KY | Kentucky | ÊåíôÜêé + CO | Colorado | ÊïëïñÜíôï + CT | Connecticut | ÊïííÝêôéêáô + KA | Kansas | ÊÜíóáò + LA | Louisiana | ËïõúæéÜíá + MA | Massachusetts | Ìáóóá÷ïõóÝôç + MD | Maryland | Ìáßñõëáíô + MN | Minnesota | Ìéíåóóüôá + MS | Mississippi | Ìéóéóóßðé + MO | Missouri | Ìéóóïýñé + MT | Montana | ÌïíôÜíá + ME | Maine | ÌÝéí + MI | Michigan | Ìßôóéãêáí + NV | Nevada | ÍåâÜäá + NE | Nebraska | ÍåìðñÜóêá + DE | Delaware | ÍôÝëáãïõåñ + NJ | New Jersey | ÍÝá ÕåñóÝç + NY | New York | ÍÝá Õüñêç + NH | New Hampshire | ÍÝï ×Üìðóáúñ + NM | New Mexico | ÍÝï Ìåîéêü + SC | South Carolina | Íüôéá Êáñïëßíá + SD | South Dakota | Íüôéá Íôáêüôá + OH | Ohio | Ï÷Üéï + OK | Oklahoma | Ïêëá÷üìá + OR | Oregon | Ïñåãêïí + PA | Pennsylvania | ÐåííóõëâÜíéá + TN | Tennessee | Ôåííåóß + GA | Georgia | Ôæüñôæéá + TX | Texas | ÔÝîáò + UT | Utah | Ãéïýôá + WY | Wyoming | Ãïõáúüìéíãê + WV | West Virginia | Ãïõåóô Âéñôæßíéá + WI | Wisconsin | Ãïõéóêüíóéí + WA | Washington | Ãïõüóéíãêôïí + DC | Washington DC | Ãïõüóéíãôïí Íôß Óé + RI | Rhode Island | Ñüïõíô Áúëáíô (50 rows) -EOF diff --git a/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-varchar.sql.out b/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-varchar.sql.out index ce18789da0..0a128a7913 100644 --- a/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-varchar.sql.out +++ b/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-varchar.sql.out @@ -1,55 +1,54 @@ -abbrev|name_en |name_gr -------+--------------------+------------------ -AK |Alaska |ÁëÜóêá -AL |Alabama |ÁëáìðÜìá -AZ |Arizona |Áñéæüíá -AR |Arkansas |Áñêáíóáò -ID |Idaho |Áúíôá÷ï -IA |Iowa |Áúüâá -VT |Vermont |Âåñìüíô -VA |Virginia |Âéñôæßíéá -NC |North Carolina |Âüñåéá Êáñïëßíá -ND |North Dakota |Âüñåéá Íôáêüôá -UT |Utah |Ãéïýôá -WY |Wyoming |Ãïõáúüìéíãê -WV |West Virginia |Ãïõåóô Âéñôæßíéá -WI |Wisconsin |Ãïõéóêüíóéí -WA |Washington |Ãïõüóéíãêôïí -DC |Washington DC |Ãïõüóéíãôïí Íôß Óé -IL |Illinois |Éëëéíüéò -IN |Indiana |ÉíôéÜíá -KA |Kansas |ÊÜíóáò -CA |California |Êáëéöüñíéá -KY |Kentucky |ÊåíôÜêé -CO |Colorado |ÊïëïñÜíôï -CT |Connecticut |ÊïííÝêôéêáô -LA |Louisiana |ËïõúæéÜíá -ME |Maine |ÌÝéí -MI |Michigan |Ìßôóéãêáí -MD |Maryland |Ìáßñõëáíô -MA |Massachusetts |Ìáóóá÷ïõóÝôç -MN |Minnesota |Ìéíåóóüôá -MS |Mississippi |Ìéóéóóßðé -MO |Missouri |Ìéóóïýñé -MT |Montana |ÌïíôÜíá -NJ |New Jersey |ÍÝá ÕåñóÝç -NY |New York |ÍÝá Õüñêç -NM |New Mexico |ÍÝï Ìåîéêü -NH |New Hampshire |ÍÝï ×Üìðóáúñ -NV |Nevada |ÍåâÜäá -NE |Nebraska |ÍåìðñÜóêá -DE |Delaware |ÍôÝëáãïõåñ -SC |South Carolina |Íüôéá Êáñïëßíá -SD |South Dakota |Íüôéá Íôáêüôá -OK |Oklahoma |Ïêëá÷üìá -OR |Oregon |Ïñåãêïí -OH |Ohio |Ï÷Üéï -PA |Pennsylvania |ÐåííóõëâÜíéá -RI |Rhode Island |Ñüïõíô Áúëáíô -TX |Texas |ÔÝîáò -TN |Tennessee |Ôåííåóß -GA |Georgia |Ôæüñôæéá -FL |Florida |Öëüñéíôá + abbrev | name_en | name_gr +--------+----------------------+-------------------- + ID | Idaho | Áúíôá÷ï + IA | Iowa | Áúüâá + AL | Alabama | ÁëáìðÜìá + AK | Alaska | ÁëÜóêá + AZ | Arizona | Áñéæüíá + AR | Arkansas | Áñêáíóáò + VT | Vermont | Âåñìüíô + VA | Virginia | Âéñôæßíéá + NC | North Carolina | Âüñåéá Êáñïëßíá + ND | North Dakota | Âüñåéá Íôáêüôá + FL | Florida | Öëüñéíôá + IL | Illinois | Éëëéíüéò + IN | Indiana | ÉíôéÜíá + CA | California | Êáëéöüñíéá + KY | Kentucky | ÊåíôÜêé + CO | Colorado | ÊïëïñÜíôï + CT | Connecticut | ÊïííÝêôéêáô + KA | Kansas | ÊÜíóáò + LA | Louisiana | ËïõúæéÜíá + MA | Massachusetts | Ìáóóá÷ïõóÝôç + MD | Maryland | Ìáßñõëáíô + MN | Minnesota | Ìéíåóóüôá + MS | Mississippi | Ìéóéóóßðé + MO | Missouri | Ìéóóïýñé + MT | Montana | ÌïíôÜíá + ME | Maine | ÌÝéí + MI | Michigan | Ìßôóéãêáí + NV | Nevada | ÍåâÜäá + NE | Nebraska | ÍåìðñÜóêá + DE | Delaware | ÍôÝëáãïõåñ + NJ | New Jersey | ÍÝá ÕåñóÝç + NY | New York | ÍÝá Õüñêç + NH | New Hampshire | ÍÝï ×Üìðóáúñ + NM | New Mexico | ÍÝï Ìåîéêü + SC | South Carolina | Íüôéá Êáñïëßíá + SD | South Dakota | Íüôéá Íôáêüôá + OH | Ohio | Ï÷Üéï + OK | Oklahoma | Ïêëá÷üìá + OR | Oregon | Ïñåãêïí + PA | Pennsylvania | ÐåííóõëâÜíéá + TN | Tennessee | Ôåííåóß + GA | Georgia | Ôæüñôæéá + TX | Texas | ÔÝîáò + UT | Utah | Ãéïýôá + WY | Wyoming | Ãïõáúüìéíãê + WV | West Virginia | Ãïõåóô Âéñôæßíéá + WI | Wisconsin | Ãïõéóêüíóéí + WA | Washington | Ãïõüóéíãêôïí + DC | Washington DC | Ãïõüóéíãôïí Íôß Óé + RI | Rhode Island | Ñüïõíô Áúëáíô (50 rows) -EOF diff --git a/src/test/locale/gr_GR.ISO8859-7/runall b/src/test/locale/gr_GR.ISO8859-7/runall index 94bbd0c8c8..da7650bb7f 100755 --- a/src/test/locale/gr_GR.ISO8859-7/runall +++ b/src/test/locale/gr_GR.ISO8859-7/runall @@ -39,7 +39,7 @@ for f in char varchar text; do fi echo "Testing PgSQL: sort on $ftype type..." - destroydb testlocale >/dev/null 2>&1 + dropdb testlocale >/dev/null 2>&1 createdb testlocale || abort "createdb failed" psql -d testlocale -c "CREATE TABLE usastates (abbrev char(2), name_en char(20), name_gr $ftype);" >/dev/null 2>&1 || abort "createtable failed" psql testlocale < test-gr.sql.in > test-gr-$f.sql.out 2>/dev/null || abort "test query failed" @@ -48,5 +48,5 @@ done echo "Testing PgSQL: select on regexp..." psql testlocale < test-gr-select.sql.in > test-gr-select.sql.out 2>/dev/null || abort "select query failed" diff expected/test-gr-select.sql.out test-gr-select.sql.out -destroydb testlocale || abort "destroydb failed" +dropdb testlocale || abort "dropdb failed" echo "Finished." diff --git a/src/test/locale/koi8-r/expected/test-koi8-char.sql.out b/src/test/locale/koi8-r/expected/test-koi8-char.sql.out index c574ff0677..95f52d8af8 100644 --- a/src/test/locale/koi8-r/expected/test-koi8-char.sql.out +++ b/src/test/locale/koi8-r/expected/test-koi8-char.sql.out @@ -1,55 +1,54 @@ -abbrev|name_en |name_ru -------+--------------------+------------------------------------------------------------ -ID |Idaho |áÊÄÁÈÏ -IA |Iowa |áÊÏ×Á -AL |Alabama |áÌÁÂÁÍÁ -AK |Alaska |áÌÑÓËÁ -AZ |Arizona |áÒÉÚÏÎÁ -AR |Arkansas |áÒËÁÎÚÁÓ -WY |Wyoming |÷ÁÊÏÍÉÎÇ -WA |Washington |÷ÁÛÉÎÇÔÏÎ -VT |Vermont |÷ÅÒÍÏÎÔ -VA |Virginia |÷ÉÒÄÖÉÎÉÑ -WI |Wisconsin |÷ÉÓËÏÎÓÉÎ -DE |Delaware |äÅÌÁ×ÜÒ -GA |Georgia |äÖÏÒÄÖÉÑ -WV |West Virginia |úÁÐÁÄÎÁÑ ÷ÉÒÄÖÉÎÉÑ -IL |Illinois |éÌÌÉÎÏÊÓ -IN |Indiana |éÎÄÉÁÎÁ -CA |California |ëÁÌÉÆÏÒÎÉÑ -KA |Kansas |ëÁÎÚÁÓ -KY |Kentucky |ëÅÎÔÕËËÉ -CO |Colorado |ëÏÌÏÒÁÄÏ -CT |Connecticut |ëÏÎÎÅËÔÉËÕÔ -LA |Louisiana |ìÕÉÚÉÁÎÁ -MA |Massachusetts |íÁÓÓÁÞÕÓÅÔÓ -MN |Minnesota |íÉÎÎÅÓÏÔÁ -MS |Mississippi |íÉÓÓÉÓÉÐÉ -MO |Missouri |íÉÓÓÕÒÉ -MI |Michigan |íÉÞÉÇÁÎ -MT |Montana |íÏÎÔÁÎÁ -ME |Maine |íÜÎ -MD |Maryland |íÜÒÉÌÅÎÄ -NE |Nebraska |îÅÂÒÁÓËÁ -NV |Nevada |îÅ×ÁÄÁ -NH |New Hampshire |îØÀ-çÜÍÐÛÉÒ -NJ |New Jersey |îØÀ-äÖÅÒÓÉ -NY |New York |îØÀ-êÏÒË -NM |New Mexico |îØÀ-íÅËÓÉËÏ -OH |Ohio |ïÇÁÊÏ -OK |Oklahoma |ïËÌÁÈÏÍÁ -DC |Washington DC |ÏËÒÕÇ ëÏÌÕÍÂÉÑ (ÓÏÚÄÁÎ ÓÐÅÃÉÁÌØÎÏ ÐÏÄ ÓÔÏÌÉÃÕ) -OR |Oregon |ïÒÅÇÏÎ -PA |Pennsylvania |ðÅÎÓÉÌØ×ÁÎÉÑ -RI |Rhode Island |òÏÄ-áÊÌÅÎÄ -ND |North Dakota |óÅ×ÅÒÎÁÑ äÁËÏÔÁ -NC |North Carolina |óÅ×ÅÒÎÁÑ ëÁÒÏÌÉÎÁ -TN |Tennessee |ôÅÎÎÅÓÓÉ -TX |Texas |ôÅÈÁÓ -FL |Florida |æÌÏÒÉÄÁ -SD |South Dakota |àÖÎÁÑ äÁËÏÔÁ -SC |South Carolina |àÖÎÁÑ ëÁÒÏÌÉÎÁ -UT |Utah |àÔÁ + abbrev | name_en | name_ru +--------+----------------------+-------------------------------------------------------------- + ID | Idaho | áÊÄÁÈÏ + IA | Iowa | áÊÏ×Á + AL | Alabama | áÌÁÂÁÍÁ + AK | Alaska | áÌÑÓËÁ + AZ | Arizona | áÒÉÚÏÎÁ + AR | Arkansas | áÒËÁÎÚÁÓ + WY | Wyoming | ÷ÁÊÏÍÉÎÇ + WA | Washington | ÷ÁÛÉÎÇÔÏÎ + VT | Vermont | ÷ÅÒÍÏÎÔ + VA | Virginia | ÷ÉÒÄÖÉÎÉÑ + WI | Wisconsin | ÷ÉÓËÏÎÓÉÎ + DE | Delaware | äÅÌÁ×ÜÒ + GA | Georgia | äÖÏÒÄÖÉÑ + WV | West Virginia | úÁÐÁÄÎÁÑ ÷ÉÒÄÖÉÎÉÑ + IL | Illinois | éÌÌÉÎÏÊÓ + IN | Indiana | éÎÄÉÁÎÁ + CA | California | ëÁÌÉÆÏÒÎÉÑ + KA | Kansas | ëÁÎÚÁÓ + KY | Kentucky | ëÅÎÔÕËËÉ + CO | Colorado | ëÏÌÏÒÁÄÏ + CT | Connecticut | ëÏÎÎÅËÔÉËÕÔ + LA | Louisiana | ìÕÉÚÉÁÎÁ + MA | Massachusetts | íÁÓÓÁÞÕÓÅÔÓ + MN | Minnesota | íÉÎÎÅÓÏÔÁ + MS | Mississippi | íÉÓÓÉÓÉÐÉ + MO | Missouri | íÉÓÓÕÒÉ + MI | Michigan | íÉÞÉÇÁÎ + MT | Montana | íÏÎÔÁÎÁ + ME | Maine | íÜÎ + MD | Maryland | íÜÒÉÌÅÎÄ + NE | Nebraska | îÅÂÒÁÓËÁ + NV | Nevada | îÅ×ÁÄÁ + NH | New Hampshire | îØÀ-çÜÍÐÛÉÒ + NJ | New Jersey | îØÀ-äÖÅÒÓÉ + NY | New York | îØÀ-êÏÒË + NM | New Mexico | îØÀ-íÅËÓÉËÏ + OH | Ohio | ïÇÁÊÏ + OK | Oklahoma | ïËÌÁÈÏÍÁ + DC | Washington DC | ÏËÒÕÇ ëÏÌÕÍÂÉÑ (ÓÏÚÄÁÎ ÓÐÅÃÉÁÌØÎÏ ÐÏÄ ÓÔÏÌÉÃÕ) + OR | Oregon | ïÒÅÇÏÎ + PA | Pennsylvania | ðÅÎÓÉÌØ×ÁÎÉÑ + RI | Rhode Island | òÏÄ-áÊÌÅÎÄ + ND | North Dakota | óÅ×ÅÒÎÁÑ äÁËÏÔÁ + NC | North Carolina | óÅ×ÅÒÎÁÑ ëÁÒÏÌÉÎÁ + TN | Tennessee | ôÅÎÎÅÓÓÉ + TX | Texas | ôÅÈÁÓ + FL | Florida | æÌÏÒÉÄÁ + SD | South Dakota | àÖÎÁÑ äÁËÏÔÁ + SC | South Carolina | àÖÎÁÑ ëÁÒÏÌÉÎÁ + UT | Utah | àÔÁ (50 rows) -EOF diff --git a/src/test/locale/koi8-r/expected/test-koi8-select.sql.out b/src/test/locale/koi8-r/expected/test-koi8-select.sql.out index 1e9f97de3c..f5be657f16 100644 --- a/src/test/locale/koi8-r/expected/test-koi8-select.sql.out +++ b/src/test/locale/koi8-r/expected/test-koi8-select.sql.out @@ -1,9 +1,8 @@ -abbrev|name_en |name_ru -------+--------------------+---------------------------------------------- -OH |Ohio |ïÇÁÊÏ -OK |Oklahoma |ïËÌÁÈÏÍÁ -DC |Washington DC |ÏËÒÕÇ ëÏÌÕÍÂÉÑ (ÓÏÚÄÁÎ ÓÐÅÃÉÁÌØÎÏ ÐÏÄ ÓÔÏÌÉÃÕ) -OR |Oregon |ïÒÅÇÏÎ + abbrev | name_en | name_ru +--------+----------------------+------------------------------------------------ + OH | Ohio | ïÇÁÊÏ + OK | Oklahoma | ïËÌÁÈÏÍÁ + DC | Washington DC | ÏËÒÕÇ ëÏÌÕÍÂÉÑ (ÓÏÚÄÁÎ ÓÐÅÃÉÁÌØÎÏ ÐÏÄ ÓÔÏÌÉÃÕ) + OR | Oregon | ïÒÅÇÏÎ (4 rows) -EOF diff --git a/src/test/locale/koi8-r/expected/test-koi8-text.sql.out b/src/test/locale/koi8-r/expected/test-koi8-text.sql.out index 210a8e2b68..3dc3acf4b1 100644 --- a/src/test/locale/koi8-r/expected/test-koi8-text.sql.out +++ b/src/test/locale/koi8-r/expected/test-koi8-text.sql.out @@ -1,55 +1,54 @@ -abbrev|name_en |name_ru -------+--------------------+---------------------------------------------- -ID |Idaho |áÊÄÁÈÏ -IA |Iowa |áÊÏ×Á -AL |Alabama |áÌÁÂÁÍÁ -AK |Alaska |áÌÑÓËÁ -AZ |Arizona |áÒÉÚÏÎÁ -AR |Arkansas |áÒËÁÎÚÁÓ -WY |Wyoming |÷ÁÊÏÍÉÎÇ -WA |Washington |÷ÁÛÉÎÇÔÏÎ -VT |Vermont |÷ÅÒÍÏÎÔ -VA |Virginia |÷ÉÒÄÖÉÎÉÑ -WI |Wisconsin |÷ÉÓËÏÎÓÉÎ -DE |Delaware |äÅÌÁ×ÜÒ -GA |Georgia |äÖÏÒÄÖÉÑ -WV |West Virginia |úÁÐÁÄÎÁÑ ÷ÉÒÄÖÉÎÉÑ -IL |Illinois |éÌÌÉÎÏÊÓ -IN |Indiana |éÎÄÉÁÎÁ -CA |California |ëÁÌÉÆÏÒÎÉÑ -KA |Kansas |ëÁÎÚÁÓ -KY |Kentucky |ëÅÎÔÕËËÉ -CO |Colorado |ëÏÌÏÒÁÄÏ -CT |Connecticut |ëÏÎÎÅËÔÉËÕÔ -LA |Louisiana |ìÕÉÚÉÁÎÁ -MA |Massachusetts |íÁÓÓÁÞÕÓÅÔÓ -MN |Minnesota |íÉÎÎÅÓÏÔÁ -MS |Mississippi |íÉÓÓÉÓÉÐÉ -MO |Missouri |íÉÓÓÕÒÉ -MI |Michigan |íÉÞÉÇÁÎ -MT |Montana |íÏÎÔÁÎÁ -ME |Maine |íÜÎ -MD |Maryland |íÜÒÉÌÅÎÄ -NE |Nebraska |îÅÂÒÁÓËÁ -NV |Nevada |îÅ×ÁÄÁ -NH |New Hampshire |îØÀ-çÜÍÐÛÉÒ -NJ |New Jersey |îØÀ-äÖÅÒÓÉ -NY |New York |îØÀ-êÏÒË -NM |New Mexico |îØÀ-íÅËÓÉËÏ -OH |Ohio |ïÇÁÊÏ -OK |Oklahoma |ïËÌÁÈÏÍÁ -DC |Washington DC |ÏËÒÕÇ ëÏÌÕÍÂÉÑ (ÓÏÚÄÁÎ ÓÐÅÃÉÁÌØÎÏ ÐÏÄ ÓÔÏÌÉÃÕ) -OR |Oregon |ïÒÅÇÏÎ -PA |Pennsylvania |ðÅÎÓÉÌØ×ÁÎÉÑ -RI |Rhode Island |òÏÄ-áÊÌÅÎÄ -ND |North Dakota |óÅ×ÅÒÎÁÑ äÁËÏÔÁ -NC |North Carolina |óÅ×ÅÒÎÁÑ ëÁÒÏÌÉÎÁ -TN |Tennessee |ôÅÎÎÅÓÓÉ -TX |Texas |ôÅÈÁÓ -FL |Florida |æÌÏÒÉÄÁ -SD |South Dakota |àÖÎÁÑ äÁËÏÔÁ -SC |South Carolina |àÖÎÁÑ ëÁÒÏÌÉÎÁ -UT |Utah |àÔÁ + abbrev | name_en | name_ru +--------+----------------------+------------------------------------------------ + ID | Idaho | áÊÄÁÈÏ + IA | Iowa | áÊÏ×Á + AL | Alabama | áÌÁÂÁÍÁ + AK | Alaska | áÌÑÓËÁ + AZ | Arizona | áÒÉÚÏÎÁ + AR | Arkansas | áÒËÁÎÚÁÓ + WY | Wyoming | ÷ÁÊÏÍÉÎÇ + WA | Washington | ÷ÁÛÉÎÇÔÏÎ + VT | Vermont | ÷ÅÒÍÏÎÔ + VA | Virginia | ÷ÉÒÄÖÉÎÉÑ + WI | Wisconsin | ÷ÉÓËÏÎÓÉÎ + DE | Delaware | äÅÌÁ×ÜÒ + GA | Georgia | äÖÏÒÄÖÉÑ + WV | West Virginia | úÁÐÁÄÎÁÑ ÷ÉÒÄÖÉÎÉÑ + IL | Illinois | éÌÌÉÎÏÊÓ + IN | Indiana | éÎÄÉÁÎÁ + CA | California | ëÁÌÉÆÏÒÎÉÑ + KA | Kansas | ëÁÎÚÁÓ + KY | Kentucky | ëÅÎÔÕËËÉ + CO | Colorado | ëÏÌÏÒÁÄÏ + CT | Connecticut | ëÏÎÎÅËÔÉËÕÔ + LA | Louisiana | ìÕÉÚÉÁÎÁ + MA | Massachusetts | íÁÓÓÁÞÕÓÅÔÓ + MN | Minnesota | íÉÎÎÅÓÏÔÁ + MS | Mississippi | íÉÓÓÉÓÉÐÉ + MO | Missouri | íÉÓÓÕÒÉ + MI | Michigan | íÉÞÉÇÁÎ + MT | Montana | íÏÎÔÁÎÁ + ME | Maine | íÜÎ + MD | Maryland | íÜÒÉÌÅÎÄ + NE | Nebraska | îÅÂÒÁÓËÁ + NV | Nevada | îÅ×ÁÄÁ + NH | New Hampshire | îØÀ-çÜÍÐÛÉÒ + NJ | New Jersey | îØÀ-äÖÅÒÓÉ + NY | New York | îØÀ-êÏÒË + NM | New Mexico | îØÀ-íÅËÓÉËÏ + OH | Ohio | ïÇÁÊÏ + OK | Oklahoma | ïËÌÁÈÏÍÁ + DC | Washington DC | ÏËÒÕÇ ëÏÌÕÍÂÉÑ (ÓÏÚÄÁÎ ÓÐÅÃÉÁÌØÎÏ ÐÏÄ ÓÔÏÌÉÃÕ) + OR | Oregon | ïÒÅÇÏÎ + PA | Pennsylvania | ðÅÎÓÉÌØ×ÁÎÉÑ + RI | Rhode Island | òÏÄ-áÊÌÅÎÄ + ND | North Dakota | óÅ×ÅÒÎÁÑ äÁËÏÔÁ + NC | North Carolina | óÅ×ÅÒÎÁÑ ëÁÒÏÌÉÎÁ + TN | Tennessee | ôÅÎÎÅÓÓÉ + TX | Texas | ôÅÈÁÓ + FL | Florida | æÌÏÒÉÄÁ + SD | South Dakota | àÖÎÁÑ äÁËÏÔÁ + SC | South Carolina | àÖÎÁÑ ëÁÒÏÌÉÎÁ + UT | Utah | àÔÁ (50 rows) -EOF diff --git a/src/test/locale/koi8-r/expected/test-koi8-varchar.sql.out b/src/test/locale/koi8-r/expected/test-koi8-varchar.sql.out index 210a8e2b68..3dc3acf4b1 100644 --- a/src/test/locale/koi8-r/expected/test-koi8-varchar.sql.out +++ b/src/test/locale/koi8-r/expected/test-koi8-varchar.sql.out @@ -1,55 +1,54 @@ -abbrev|name_en |name_ru -------+--------------------+---------------------------------------------- -ID |Idaho |áÊÄÁÈÏ -IA |Iowa |áÊÏ×Á -AL |Alabama |áÌÁÂÁÍÁ -AK |Alaska |áÌÑÓËÁ -AZ |Arizona |áÒÉÚÏÎÁ -AR |Arkansas |áÒËÁÎÚÁÓ -WY |Wyoming |÷ÁÊÏÍÉÎÇ -WA |Washington |÷ÁÛÉÎÇÔÏÎ -VT |Vermont |÷ÅÒÍÏÎÔ -VA |Virginia |÷ÉÒÄÖÉÎÉÑ -WI |Wisconsin |÷ÉÓËÏÎÓÉÎ -DE |Delaware |äÅÌÁ×ÜÒ -GA |Georgia |äÖÏÒÄÖÉÑ -WV |West Virginia |úÁÐÁÄÎÁÑ ÷ÉÒÄÖÉÎÉÑ -IL |Illinois |éÌÌÉÎÏÊÓ -IN |Indiana |éÎÄÉÁÎÁ -CA |California |ëÁÌÉÆÏÒÎÉÑ -KA |Kansas |ëÁÎÚÁÓ -KY |Kentucky |ëÅÎÔÕËËÉ -CO |Colorado |ëÏÌÏÒÁÄÏ -CT |Connecticut |ëÏÎÎÅËÔÉËÕÔ -LA |Louisiana |ìÕÉÚÉÁÎÁ -MA |Massachusetts |íÁÓÓÁÞÕÓÅÔÓ -MN |Minnesota |íÉÎÎÅÓÏÔÁ -MS |Mississippi |íÉÓÓÉÓÉÐÉ -MO |Missouri |íÉÓÓÕÒÉ -MI |Michigan |íÉÞÉÇÁÎ -MT |Montana |íÏÎÔÁÎÁ -ME |Maine |íÜÎ -MD |Maryland |íÜÒÉÌÅÎÄ -NE |Nebraska |îÅÂÒÁÓËÁ -NV |Nevada |îÅ×ÁÄÁ -NH |New Hampshire |îØÀ-çÜÍÐÛÉÒ -NJ |New Jersey |îØÀ-äÖÅÒÓÉ -NY |New York |îØÀ-êÏÒË -NM |New Mexico |îØÀ-íÅËÓÉËÏ -OH |Ohio |ïÇÁÊÏ -OK |Oklahoma |ïËÌÁÈÏÍÁ -DC |Washington DC |ÏËÒÕÇ ëÏÌÕÍÂÉÑ (ÓÏÚÄÁÎ ÓÐÅÃÉÁÌØÎÏ ÐÏÄ ÓÔÏÌÉÃÕ) -OR |Oregon |ïÒÅÇÏÎ -PA |Pennsylvania |ðÅÎÓÉÌØ×ÁÎÉÑ -RI |Rhode Island |òÏÄ-áÊÌÅÎÄ -ND |North Dakota |óÅ×ÅÒÎÁÑ äÁËÏÔÁ -NC |North Carolina |óÅ×ÅÒÎÁÑ ëÁÒÏÌÉÎÁ -TN |Tennessee |ôÅÎÎÅÓÓÉ -TX |Texas |ôÅÈÁÓ -FL |Florida |æÌÏÒÉÄÁ -SD |South Dakota |àÖÎÁÑ äÁËÏÔÁ -SC |South Carolina |àÖÎÁÑ ëÁÒÏÌÉÎÁ -UT |Utah |àÔÁ + abbrev | name_en | name_ru +--------+----------------------+------------------------------------------------ + ID | Idaho | áÊÄÁÈÏ + IA | Iowa | áÊÏ×Á + AL | Alabama | áÌÁÂÁÍÁ + AK | Alaska | áÌÑÓËÁ + AZ | Arizona | áÒÉÚÏÎÁ + AR | Arkansas | áÒËÁÎÚÁÓ + WY | Wyoming | ÷ÁÊÏÍÉÎÇ + WA | Washington | ÷ÁÛÉÎÇÔÏÎ + VT | Vermont | ÷ÅÒÍÏÎÔ + VA | Virginia | ÷ÉÒÄÖÉÎÉÑ + WI | Wisconsin | ÷ÉÓËÏÎÓÉÎ + DE | Delaware | äÅÌÁ×ÜÒ + GA | Georgia | äÖÏÒÄÖÉÑ + WV | West Virginia | úÁÐÁÄÎÁÑ ÷ÉÒÄÖÉÎÉÑ + IL | Illinois | éÌÌÉÎÏÊÓ + IN | Indiana | éÎÄÉÁÎÁ + CA | California | ëÁÌÉÆÏÒÎÉÑ + KA | Kansas | ëÁÎÚÁÓ + KY | Kentucky | ëÅÎÔÕËËÉ + CO | Colorado | ëÏÌÏÒÁÄÏ + CT | Connecticut | ëÏÎÎÅËÔÉËÕÔ + LA | Louisiana | ìÕÉÚÉÁÎÁ + MA | Massachusetts | íÁÓÓÁÞÕÓÅÔÓ + MN | Minnesota | íÉÎÎÅÓÏÔÁ + MS | Mississippi | íÉÓÓÉÓÉÐÉ + MO | Missouri | íÉÓÓÕÒÉ + MI | Michigan | íÉÞÉÇÁÎ + MT | Montana | íÏÎÔÁÎÁ + ME | Maine | íÜÎ + MD | Maryland | íÜÒÉÌÅÎÄ + NE | Nebraska | îÅÂÒÁÓËÁ + NV | Nevada | îÅ×ÁÄÁ + NH | New Hampshire | îØÀ-çÜÍÐÛÉÒ + NJ | New Jersey | îØÀ-äÖÅÒÓÉ + NY | New York | îØÀ-êÏÒË + NM | New Mexico | îØÀ-íÅËÓÉËÏ + OH | Ohio | ïÇÁÊÏ + OK | Oklahoma | ïËÌÁÈÏÍÁ + DC | Washington DC | ÏËÒÕÇ ëÏÌÕÍÂÉÑ (ÓÏÚÄÁÎ ÓÐÅÃÉÁÌØÎÏ ÐÏÄ ÓÔÏÌÉÃÕ) + OR | Oregon | ïÒÅÇÏÎ + PA | Pennsylvania | ðÅÎÓÉÌØ×ÁÎÉÑ + RI | Rhode Island | òÏÄ-áÊÌÅÎÄ + ND | North Dakota | óÅ×ÅÒÎÁÑ äÁËÏÔÁ + NC | North Carolina | óÅ×ÅÒÎÁÑ ëÁÒÏÌÉÎÁ + TN | Tennessee | ôÅÎÎÅÓÓÉ + TX | Texas | ôÅÈÁÓ + FL | Florida | æÌÏÒÉÄÁ + SD | South Dakota | àÖÎÁÑ äÁËÏÔÁ + SC | South Carolina | àÖÎÁÑ ëÁÒÏÌÉÎÁ + UT | Utah | àÔÁ (50 rows) -EOF diff --git a/src/test/locale/koi8-r/runall b/src/test/locale/koi8-r/runall index a6b81baa82..2fb6a5de41 100755 --- a/src/test/locale/koi8-r/runall +++ b/src/test/locale/koi8-r/runall @@ -39,7 +39,7 @@ for f in char varchar text; do fi echo "Testing PgSQL: sort on $ftype type..." - destroydb testlocale >/dev/null 2>&1 + dropdb testlocale >/dev/null 2>&1 createdb testlocale || abort "createdb failed" psql -d testlocale -c "CREATE TABLE usastates (abbrev char(2), name_en char(20), name_ru $ftype);" >/dev/null 2>&1 || abort "createtable failed" psql testlocale < test-koi8.sql.in > test-koi8-$f.sql.out 2>/dev/null || abort "test query failed" @@ -48,5 +48,5 @@ done echo "Testing PgSQL: select on regexp..." psql testlocale < test-koi8-select.sql.in > test-koi8-select.sql.out 2>/dev/null || abort "select query failed" diff expected/test-koi8-select.sql.out test-koi8-select.sql.out -destroydb testlocale || abort "destroydb failed" +dropdb testlocale || abort "dropdb failed" echo "Finished." diff --git a/src/test/locale/koi8-to-win1251/expected/test-koi8-char.sql.out b/src/test/locale/koi8-to-win1251/expected/test-koi8-char.sql.out index 391af87c1d..52d8b334a9 100644 --- a/src/test/locale/koi8-to-win1251/expected/test-koi8-char.sql.out +++ b/src/test/locale/koi8-to-win1251/expected/test-koi8-char.sql.out @@ -1,55 +1,54 @@ -abbrev|name_en |name_ru -------+--------------------+------------------------------------------------------------ -ID |Idaho |Àéäàõî -IA |Iowa |Àéîâà -AL |Alabama |Àëàáàìà -AK |Alaska |Àëÿñêà -AZ |Arizona |Àðèçîíà -AR |Arkansas |Àðêàíçàñ -WY |Wyoming |Âàéîìèíã -WA |Washington |Âàøèíãòîí -VT |Vermont |Âåðìîíò -VA |Virginia |Âèðäæèíèÿ -WI |Wisconsin |Âèñêîíñèí -DE |Delaware |Äåëàâýð -GA |Georgia |Äæîðäæèÿ -WV |West Virginia |Çàïàäíàÿ Âèðäæèíèÿ -IL |Illinois |Èëëèíîéñ -IN |Indiana |Èíäèàíà -CA |California |Êàëèôîðíèÿ -KA |Kansas |Êàíçàñ -KY |Kentucky |Êåíòóêêè -CO |Colorado |Êîëîðàäî -CT |Connecticut |Êîííåêòèêóò -LA |Louisiana |Ëóèçèàíà -MA |Massachusetts |Ìàññà÷óñåòñ -MN |Minnesota |Ìèííåñîòà -MS |Mississippi |Ìèññèñèïè -MO |Missouri |Ìèññóðè -MI |Michigan |Ìè÷èãàí -MT |Montana |Ìîíòàíà -ME |Maine |Ìýí -MD |Maryland |Ìýðèëåíä -NE |Nebraska |Íåáðàñêà -NV |Nevada |Íåâàäà -NH |New Hampshire |Íüþ-Ãýìïøèð -NJ |New Jersey |Íüþ-Äæåðñè -NY |New York |Íüþ-Éîðê -NM |New Mexico |Íüþ-Ìåêñèêî -OH |Ohio |Îãàéî -OK |Oklahoma |Îêëàõîìà -DC |Washington DC |îêðóã Êîëóìáèÿ (ñîçäàí ñïåöèàëüíî ïîä ñòîëèöó) -OR |Oregon |Îðåãîí -PA |Pennsylvania |Ïåíñèëüâàíèÿ -RI |Rhode Island |Ðîä-Àéëåíä -ND |North Dakota |Ñåâåðíàÿ Äàêîòà -NC |North Carolina |Ñåâåðíàÿ Êàðîëèíà -TN |Tennessee |Òåííåññè -TX |Texas |Òåõàñ -FL |Florida |Ôëîðèäà -SD |South Dakota |Þæíàÿ Äàêîòà -SC |South Carolina |Þæíàÿ Êàðîëèíà -UT |Utah |Þòà + abbrev | name_en | name_ru +--------+----------------------+-------------------------------------------------------------- + ID | Idaho | Àéäàõî + IA | Iowa | Àéîâà + AL | Alabama | Àëàáàìà + AK | Alaska | Àëÿñêà + AZ | Arizona | Àðèçîíà + AR | Arkansas | Àðêàíçàñ + WY | Wyoming | Âàéîìèíã + WA | Washington | Âàøèíãòîí + VT | Vermont | Âåðìîíò + VA | Virginia | Âèðäæèíèÿ + WI | Wisconsin | Âèñêîíñèí + DE | Delaware | Äåëàâýð + GA | Georgia | Äæîðäæèÿ + WV | West Virginia | Çàïàäíàÿ Âèðäæèíèÿ + IL | Illinois | Èëëèíîéñ + IN | Indiana | Èíäèàíà + CA | California | Êàëèôîðíèÿ + KA | Kansas | Êàíçàñ + KY | Kentucky | Êåíòóêêè + CO | Colorado | Êîëîðàäî + CT | Connecticut | Êîííåêòèêóò + LA | Louisiana | Ëóèçèàíà + MA | Massachusetts | Ìàññà÷óñåòñ + MN | Minnesota | Ìèííåñîòà + MS | Mississippi | Ìèññèñèïè + MO | Missouri | Ìèññóðè + MI | Michigan | Ìè÷èãàí + MT | Montana | Ìîíòàíà + ME | Maine | Ìýí + MD | Maryland | Ìýðèëåíä + NE | Nebraska | Íåáðàñêà + NV | Nevada | Íåâàäà + NH | New Hampshire | Íüþ-Ãýìïøèð + NJ | New Jersey | Íüþ-Äæåðñè + NY | New York | Íüþ-Éîðê + NM | New Mexico | Íüþ-Ìåêñèêî + OH | Ohio | Îãàéî + OK | Oklahoma | Îêëàõîìà + DC | Washington DC | îêðóã Êîëóìáèÿ (ñîçäàí ñïåöèàëüíî ïîä ñòîëèöó) + OR | Oregon | Îðåãîí + PA | Pennsylvania | Ïåíñèëüâàíèÿ + RI | Rhode Island | Ðîä-Àéëåíä + ND | North Dakota | Ñåâåðíàÿ Äàêîòà + NC | North Carolina | Ñåâåðíàÿ Êàðîëèíà + TN | Tennessee | Òåííåññè + TX | Texas | Òåõàñ + FL | Florida | Ôëîðèäà + SD | South Dakota | Þæíàÿ Äàêîòà + SC | South Carolina | Þæíàÿ Êàðîëèíà + UT | Utah | Þòà (50 rows) -EOF diff --git a/src/test/locale/koi8-to-win1251/expected/test-koi8-select.sql.out b/src/test/locale/koi8-to-win1251/expected/test-koi8-select.sql.out index 7d73f0e47f..0feffa2548 100644 --- a/src/test/locale/koi8-to-win1251/expected/test-koi8-select.sql.out +++ b/src/test/locale/koi8-to-win1251/expected/test-koi8-select.sql.out @@ -1,9 +1,8 @@ -abbrev|name_en |name_ru -------+--------------------+---------------------------------------------- -OH |Ohio |Îãàéî -OK |Oklahoma |Îêëàõîìà -DC |Washington DC |îêðóã Êîëóìáèÿ (ñîçäàí ñïåöèàëüíî ïîä ñòîëèöó) -OR |Oregon |Îðåãîí + abbrev | name_en | name_ru +--------+----------------------+------------------------------------------------ + OH | Ohio | Îãàéî + OK | Oklahoma | Îêëàõîìà + DC | Washington DC | îêðóã Êîëóìáèÿ (ñîçäàí ñïåöèàëüíî ïîä ñòîëèöó) + OR | Oregon | Îðåãîí (4 rows) -EOF diff --git a/src/test/locale/koi8-to-win1251/expected/test-koi8-sort.out b/src/test/locale/koi8-to-win1251/expected/test-koi8-sort.out index 9b35ecdeaa..72242ccbfa 100644 --- a/src/test/locale/koi8-to-win1251/expected/test-koi8-sort.out +++ b/src/test/locale/koi8-to-win1251/expected/test-koi8-sort.out @@ -2,8 +2,8 @@ Bording hoarding Vesta vesta +Öàïëÿ +Þã àëüÿíñ Àôðèêà Ñåâåð -Öàïëÿ -Þã diff --git a/src/test/locale/koi8-to-win1251/expected/test-koi8-text.sql.out b/src/test/locale/koi8-to-win1251/expected/test-koi8-text.sql.out index 7a1dad22ff..eccc1cbfc0 100644 --- a/src/test/locale/koi8-to-win1251/expected/test-koi8-text.sql.out +++ b/src/test/locale/koi8-to-win1251/expected/test-koi8-text.sql.out @@ -1,55 +1,54 @@ -abbrev|name_en |name_ru -------+--------------------+---------------------------------------------- -ID |Idaho |Àéäàõî -IA |Iowa |Àéîâà -AL |Alabama |Àëàáàìà -AK |Alaska |Àëÿñêà -AZ |Arizona |Àðèçîíà -AR |Arkansas |Àðêàíçàñ -WY |Wyoming |Âàéîìèíã -WA |Washington |Âàøèíãòîí -VT |Vermont |Âåðìîíò -VA |Virginia |Âèðäæèíèÿ -WI |Wisconsin |Âèñêîíñèí -DE |Delaware |Äåëàâýð -GA |Georgia |Äæîðäæèÿ -WV |West Virginia |Çàïàäíàÿ Âèðäæèíèÿ -IL |Illinois |Èëëèíîéñ -IN |Indiana |Èíäèàíà -CA |California |Êàëèôîðíèÿ -KA |Kansas |Êàíçàñ -KY |Kentucky |Êåíòóêêè -CO |Colorado |Êîëîðàäî -CT |Connecticut |Êîííåêòèêóò -LA |Louisiana |Ëóèçèàíà -MA |Massachusetts |Ìàññà÷óñåòñ -MN |Minnesota |Ìèííåñîòà -MS |Mississippi |Ìèññèñèïè -MO |Missouri |Ìèññóðè -MI |Michigan |Ìè÷èãàí -MT |Montana |Ìîíòàíà -ME |Maine |Ìýí -MD |Maryland |Ìýðèëåíä -NE |Nebraska |Íåáðàñêà -NV |Nevada |Íåâàäà -NH |New Hampshire |Íüþ-Ãýìïøèð -NJ |New Jersey |Íüþ-Äæåðñè -NY |New York |Íüþ-Éîðê -NM |New Mexico |Íüþ-Ìåêñèêî -OH |Ohio |Îãàéî -OK |Oklahoma |Îêëàõîìà -DC |Washington DC |îêðóã Êîëóìáèÿ (ñîçäàí ñïåöèàëüíî ïîä ñòîëèöó) -OR |Oregon |Îðåãîí -PA |Pennsylvania |Ïåíñèëüâàíèÿ -RI |Rhode Island |Ðîä-Àéëåíä -ND |North Dakota |Ñåâåðíàÿ Äàêîòà -NC |North Carolina |Ñåâåðíàÿ Êàðîëèíà -TN |Tennessee |Òåííåññè -TX |Texas |Òåõàñ -FL |Florida |Ôëîðèäà -SD |South Dakota |Þæíàÿ Äàêîòà -SC |South Carolina |Þæíàÿ Êàðîëèíà -UT |Utah |Þòà + abbrev | name_en | name_ru +--------+----------------------+------------------------------------------------ + ID | Idaho | Àéäàõî + IA | Iowa | Àéîâà + AL | Alabama | Àëàáàìà + AK | Alaska | Àëÿñêà + AZ | Arizona | Àðèçîíà + AR | Arkansas | Àðêàíçàñ + WY | Wyoming | Âàéîìèíã + WA | Washington | Âàøèíãòîí + VT | Vermont | Âåðìîíò + VA | Virginia | Âèðäæèíèÿ + WI | Wisconsin | Âèñêîíñèí + DE | Delaware | Äåëàâýð + GA | Georgia | Äæîðäæèÿ + WV | West Virginia | Çàïàäíàÿ Âèðäæèíèÿ + IL | Illinois | Èëëèíîéñ + IN | Indiana | Èíäèàíà + CA | California | Êàëèôîðíèÿ + KA | Kansas | Êàíçàñ + KY | Kentucky | Êåíòóêêè + CO | Colorado | Êîëîðàäî + CT | Connecticut | Êîííåêòèêóò + LA | Louisiana | Ëóèçèàíà + MA | Massachusetts | Ìàññà÷óñåòñ + MN | Minnesota | Ìèííåñîòà + MS | Mississippi | Ìèññèñèïè + MO | Missouri | Ìèññóðè + MI | Michigan | Ìè÷èãàí + MT | Montana | Ìîíòàíà + ME | Maine | Ìýí + MD | Maryland | Ìýðèëåíä + NE | Nebraska | Íåáðàñêà + NV | Nevada | Íåâàäà + NH | New Hampshire | Íüþ-Ãýìïøèð + NJ | New Jersey | Íüþ-Äæåðñè + NY | New York | Íüþ-Éîðê + NM | New Mexico | Íüþ-Ìåêñèêî + OH | Ohio | Îãàéî + OK | Oklahoma | Îêëàõîìà + DC | Washington DC | îêðóã Êîëóìáèÿ (ñîçäàí ñïåöèàëüíî ïîä ñòîëèöó) + OR | Oregon | Îðåãîí + PA | Pennsylvania | Ïåíñèëüâàíèÿ + RI | Rhode Island | Ðîä-Àéëåíä + ND | North Dakota | Ñåâåðíàÿ Äàêîòà + NC | North Carolina | Ñåâåðíàÿ Êàðîëèíà + TN | Tennessee | Òåííåññè + TX | Texas | Òåõàñ + FL | Florida | Ôëîðèäà + SD | South Dakota | Þæíàÿ Äàêîòà + SC | South Carolina | Þæíàÿ Êàðîëèíà + UT | Utah | Þòà (50 rows) -EOF diff --git a/src/test/locale/koi8-to-win1251/expected/test-koi8-varchar.sql.out b/src/test/locale/koi8-to-win1251/expected/test-koi8-varchar.sql.out index 7a1dad22ff..eccc1cbfc0 100644 --- a/src/test/locale/koi8-to-win1251/expected/test-koi8-varchar.sql.out +++ b/src/test/locale/koi8-to-win1251/expected/test-koi8-varchar.sql.out @@ -1,55 +1,54 @@ -abbrev|name_en |name_ru -------+--------------------+---------------------------------------------- -ID |Idaho |Àéäàõî -IA |Iowa |Àéîâà -AL |Alabama |Àëàáàìà -AK |Alaska |Àëÿñêà -AZ |Arizona |Àðèçîíà -AR |Arkansas |Àðêàíçàñ -WY |Wyoming |Âàéîìèíã -WA |Washington |Âàøèíãòîí -VT |Vermont |Âåðìîíò -VA |Virginia |Âèðäæèíèÿ -WI |Wisconsin |Âèñêîíñèí -DE |Delaware |Äåëàâýð -GA |Georgia |Äæîðäæèÿ -WV |West Virginia |Çàïàäíàÿ Âèðäæèíèÿ -IL |Illinois |Èëëèíîéñ -IN |Indiana |Èíäèàíà -CA |California |Êàëèôîðíèÿ -KA |Kansas |Êàíçàñ -KY |Kentucky |Êåíòóêêè -CO |Colorado |Êîëîðàäî -CT |Connecticut |Êîííåêòèêóò -LA |Louisiana |Ëóèçèàíà -MA |Massachusetts |Ìàññà÷óñåòñ -MN |Minnesota |Ìèííåñîòà -MS |Mississippi |Ìèññèñèïè -MO |Missouri |Ìèññóðè -MI |Michigan |Ìè÷èãàí -MT |Montana |Ìîíòàíà -ME |Maine |Ìýí -MD |Maryland |Ìýðèëåíä -NE |Nebraska |Íåáðàñêà -NV |Nevada |Íåâàäà -NH |New Hampshire |Íüþ-Ãýìïøèð -NJ |New Jersey |Íüþ-Äæåðñè -NY |New York |Íüþ-Éîðê -NM |New Mexico |Íüþ-Ìåêñèêî -OH |Ohio |Îãàéî -OK |Oklahoma |Îêëàõîìà -DC |Washington DC |îêðóã Êîëóìáèÿ (ñîçäàí ñïåöèàëüíî ïîä ñòîëèöó) -OR |Oregon |Îðåãîí -PA |Pennsylvania |Ïåíñèëüâàíèÿ -RI |Rhode Island |Ðîä-Àéëåíä -ND |North Dakota |Ñåâåðíàÿ Äàêîòà -NC |North Carolina |Ñåâåðíàÿ Êàðîëèíà -TN |Tennessee |Òåííåññè -TX |Texas |Òåõàñ -FL |Florida |Ôëîðèäà -SD |South Dakota |Þæíàÿ Äàêîòà -SC |South Carolina |Þæíàÿ Êàðîëèíà -UT |Utah |Þòà + abbrev | name_en | name_ru +--------+----------------------+------------------------------------------------ + ID | Idaho | Àéäàõî + IA | Iowa | Àéîâà + AL | Alabama | Àëàáàìà + AK | Alaska | Àëÿñêà + AZ | Arizona | Àðèçîíà + AR | Arkansas | Àðêàíçàñ + WY | Wyoming | Âàéîìèíã + WA | Washington | Âàøèíãòîí + VT | Vermont | Âåðìîíò + VA | Virginia | Âèðäæèíèÿ + WI | Wisconsin | Âèñêîíñèí + DE | Delaware | Äåëàâýð + GA | Georgia | Äæîðäæèÿ + WV | West Virginia | Çàïàäíàÿ Âèðäæèíèÿ + IL | Illinois | Èëëèíîéñ + IN | Indiana | Èíäèàíà + CA | California | Êàëèôîðíèÿ + KA | Kansas | Êàíçàñ + KY | Kentucky | Êåíòóêêè + CO | Colorado | Êîëîðàäî + CT | Connecticut | Êîííåêòèêóò + LA | Louisiana | Ëóèçèàíà + MA | Massachusetts | Ìàññà÷óñåòñ + MN | Minnesota | Ìèííåñîòà + MS | Mississippi | Ìèññèñèïè + MO | Missouri | Ìèññóðè + MI | Michigan | Ìè÷èãàí + MT | Montana | Ìîíòàíà + ME | Maine | Ìýí + MD | Maryland | Ìýðèëåíä + NE | Nebraska | Íåáðàñêà + NV | Nevada | Íåâàäà + NH | New Hampshire | Íüþ-Ãýìïøèð + NJ | New Jersey | Íüþ-Äæåðñè + NY | New York | Íüþ-Éîðê + NM | New Mexico | Íüþ-Ìåêñèêî + OH | Ohio | Îãàéî + OK | Oklahoma | Îêëàõîìà + DC | Washington DC | îêðóã Êîëóìáèÿ (ñîçäàí ñïåöèàëüíî ïîä ñòîëèöó) + OR | Oregon | Îðåãîí + PA | Pennsylvania | Ïåíñèëüâàíèÿ + RI | Rhode Island | Ðîä-Àéëåíä + ND | North Dakota | Ñåâåðíàÿ Äàêîòà + NC | North Carolina | Ñåâåðíàÿ Êàðîëèíà + TN | Tennessee | Òåííåññè + TX | Texas | Òåõàñ + FL | Florida | Ôëîðèäà + SD | South Dakota | Þæíàÿ Äàêîòà + SC | South Carolina | Þæíàÿ Êàðîëèíà + UT | Utah | Þòà (50 rows) -EOF diff --git a/src/test/locale/koi8-to-win1251/runall b/src/test/locale/koi8-to-win1251/runall index e0fef2f0b9..a9aeadfa47 100755 --- a/src/test/locale/koi8-to-win1251/runall +++ b/src/test/locale/koi8-to-win1251/runall @@ -36,7 +36,7 @@ for f in char varchar text; do fi echo "Testing PgSQL: sort on $ftype type..." - destroydb testlocale >/dev/null 2>&1 + dropdb testlocale >/dev/null 2>&1 createdb testlocale || abort "createdb failed" psql -d testlocale -c "CREATE TABLE usastates (abbrev char(2), name_en char(20), name_ru $ftype);" >/dev/null 2>&1 || abort "createtable failed" psql testlocale < test-koi8.sql.in > test-koi8-$f.sql.out 2>/dev/null || abort "test query failed" @@ -45,5 +45,5 @@ done echo "Testing PgSQL: select on regexp..." psql testlocale < test-koi8-select.sql.in > test-koi8-select.sql.out 2>/dev/null || abort "select query failed" diff expected/test-koi8-select.sql.out test-koi8-select.sql.out -destroydb testlocale || abort "destroydb failed" +dropdb testlocale || abort "dropdb failed" echo "Finished." diff --git a/src/test/regress/expected/abstime-solaris-1947.out b/src/test/regress/expected/abstime-solaris-1947.out new file mode 100644 index 0000000000..cca2519e91 --- /dev/null +++ b/src/test/regress/expected/abstime-solaris-1947.out @@ -0,0 +1,175 @@ +-- +-- ABSTIME +-- testing built-in time type abstime +-- uses reltime and tinterval +-- +-- +-- timezones may vary based not only on location but the operating +-- system. the main correctness issue is that the OS may not get +-- daylight savings time right for times prior to Unix epoch (jan 1 1970). +-- +CREATE TABLE ABSTIME_TBL (f1 abstime); +INSERT INTO ABSTIME_TBL (f1) VALUES ('Jan 14, 1973 03:14:21'); +-- was INSERT INTO ABSTIME_TBL (f1) VALUES (abstime 'now'): +INSERT INTO ABSTIME_TBL (f1) VALUES (abstime 'Mon May 1 00:30:30 1995'); +INSERT INTO ABSTIME_TBL (f1) VALUES (abstime 'epoch'); +INSERT INTO ABSTIME_TBL (f1) VALUES (abstime 'current'); +INSERT INTO ABSTIME_TBL (f1) VALUES (abstime 'infinity'); +INSERT INTO ABSTIME_TBL (f1) VALUES (abstime '-infinity'); +INSERT INTO ABSTIME_TBL (f1) VALUES (abstime 'May 10, 1947 23:59:12'); +-- what happens if we specify slightly misformatted abstime? +INSERT INTO ABSTIME_TBL (f1) VALUES ('Feb 35, 1946 10:00:00'); +ERROR: Bad abstime external representation 'Feb 35, 1946 10:00:00' +INSERT INTO ABSTIME_TBL (f1) VALUES ('Feb 28, 1984 25:08:10'); +ERROR: Bad abstime external representation 'Feb 28, 1984 25:08:10' +-- badly formatted abstimes: these should result in invalid abstimes +INSERT INTO ABSTIME_TBL (f1) VALUES ('bad date format'); +ERROR: Bad abstime external representation 'bad date format' +INSERT INTO ABSTIME_TBL (f1) VALUES ('Jun 10, 1843'); +-- test abstime operators +SELECT '' AS eight, ABSTIME_TBL.*; + eight | f1 +-------+------------------------------ + | Sun Jan 14 03:14:21 1973 PST + | Mon May 01 00:30:30 1995 PDT + | epoch + | current + | infinity + | -infinity + | Sat May 10 23:59:12 1947 PDT + | invalid +(8 rows) + +SELECT '' AS six, ABSTIME_TBL.* + WHERE ABSTIME_TBL.f1 < abstime 'Jun 30, 2001'; + six | f1 +-----+------------------------------ + | Sun Jan 14 03:14:21 1973 PST + | Mon May 01 00:30:30 1995 PDT + | epoch + | current + | -infinity + | Sat May 10 23:59:12 1947 PDT +(6 rows) + +SELECT '' AS six, ABSTIME_TBL.* + WHERE ABSTIME_TBL.f1 > abstime '-infinity'; + six | f1 +-----+------------------------------ + | Sun Jan 14 03:14:21 1973 PST + | Mon May 01 00:30:30 1995 PDT + | epoch + | current + | infinity + | Sat May 10 23:59:12 1947 PDT +(6 rows) + +SELECT '' AS six, ABSTIME_TBL.* + WHERE abstime 'May 10, 1947 23:59:12' <> ABSTIME_TBL.f1; + six | f1 +-----+------------------------------ + | Sun Jan 14 03:14:21 1973 PST + | Mon May 01 00:30:30 1995 PDT + | epoch + | current + | infinity + | -infinity +(6 rows) + +SELECT '' AS one, ABSTIME_TBL.* + WHERE abstime 'current' = ABSTIME_TBL.f1; + one | f1 +-----+--------- + | current +(1 row) + +SELECT '' AS three, ABSTIME_TBL.* + WHERE abstime 'epoch' >= ABSTIME_TBL.f1; + three | f1 +-------+------------------------------ + | epoch + | -infinity + | Sat May 10 23:59:12 1947 PDT +(3 rows) + +SELECT '' AS four, ABSTIME_TBL.* + WHERE ABSTIME_TBL.f1 <= abstime 'Jan 14, 1973 03:14:21'; + four | f1 +------+------------------------------ + | Sun Jan 14 03:14:21 1973 PST + | epoch + | -infinity + | Sat May 10 23:59:12 1947 PDT +(4 rows) + +SELECT '' AS four, ABSTIME_TBL.* + WHERE ABSTIME_TBL.f1 + tinterval '["Apr 1 1950 00:00:00" "Dec 30 1999 23:00:00"]'; + four | f1 +------+------------------------------ + | Sun Jan 14 03:14:21 1973 PST + | Mon May 01 00:30:30 1995 PDT + | epoch +(3 rows) + +-- these four queries should return the same answer +-- the "infinity" and "-infinity" tuples in ABSTIME_TBL cannot be added and +-- therefore, should not show up in the results. +SELECT '' AS three, ABSTIME_TBL.* + WHERE (ABSTIME_TBL.f1 + reltime '@ 3 year') -- +3 years + < abstime 'Jan 14 14:00:00 1977'; + three | f1 +-------+------------------------------ + | Sun Jan 14 03:14:21 1973 PST + | epoch + | Sat May 10 23:59:12 1947 PDT +(3 rows) + +SELECT '' AS three, ABSTIME_TBL.* + WHERE (ABSTIME_TBL.f1 + reltime '@ 3 year ago') -- -3 years + < abstime 'Jan 14 14:00:00 1971'; + three | f1 +-------+------------------------------ + | Sun Jan 14 03:14:21 1973 PST + | epoch + | Sat May 10 23:59:12 1947 PDT +(3 rows) + +SELECT '' AS three, ABSTIME_TBL.* + WHERE (ABSTIME_TBL.f1 - reltime '@ 3 year') -- -(+3) years + < abstime 'Jan 14 14:00:00 1971'; + three | f1 +-------+------------------------------ + | Sun Jan 14 03:14:21 1973 PST + | epoch + | Sat May 10 23:59:12 1947 PDT +(3 rows) + +SELECT '' AS three, ABSTIME_TBL.* + WHERE (ABSTIME_TBL.f1 - reltime '@ 3 year ago') -- -(-3) years + < abstime 'Jan 14 14:00:00 1977'; + three | f1 +-------+------------------------------ + | Sun Jan 14 03:14:21 1973 PST + | epoch + | Sat May 10 23:59:12 1947 PDT +(3 rows) + +SELECT '' AS ten, ABSTIME_TBL.f1 AS abstime, RELTIME_TBL.f1 AS reltime + WHERE (ABSTIME_TBL.f1 + RELTIME_TBL.f1) + < abstime 'Jan 14 14:00:00 1971' + ORDER BY abstime, reltime; + ten | abstime | reltime +-----+------------------------------+--------------- + | Sat May 10 23:59:12 1947 PDT | @ 14 secs ago + | Sat May 10 23:59:12 1947 PDT | @ 1 min + | Sat May 10 23:59:12 1947 PDT | @ 5 hours + | Sat May 10 23:59:12 1947 PDT | @ 10 days + | Sat May 10 23:59:12 1947 PDT | @ 3 mons + | epoch | @ 14 secs ago + | epoch | @ 1 min + | epoch | @ 5 hours + | epoch | @ 10 days + | epoch | @ 3 mons +(10 rows) + diff --git a/src/test/regress/expected/geometry-solaris-precision.out b/src/test/regress/expected/geometry-solaris-precision.out new file mode 100644 index 0000000000..a389299d04 --- /dev/null +++ b/src/test/regress/expected/geometry-solaris-precision.out @@ -0,0 +1,532 @@ +-- +-- GEOMETRY +-- +-- +-- Points +-- +SELECT '' AS four, center(f1) AS center + FROM BOX_TBL; + four | center +------+--------- + | (1,1) + | (2,2) + | (2.5,3) + | (3,3) +(4 rows) + +SELECT '' AS four, (@@ f1) AS center + FROM BOX_TBL; + four | center +------+--------- + | (1,1) + | (2,2) + | (2.5,3) + | (3,3) +(4 rows) + +SELECT '' AS six, point(f1) AS center + FROM CIRCLE_TBL; + six | center +-----+----------- + | (0,0) + | (1,2) + | (1,3) + | (1,2) + | (100,200) + | (100,0) +(6 rows) + +SELECT '' AS six, (@@ f1) AS center + FROM CIRCLE_TBL; + six | center +-----+----------- + | (0,0) + | (1,2) + | (1,3) + | (1,2) + | (100,200) + | (100,0) +(6 rows) + +SELECT '' AS two, (@@ f1) AS center + FROM POLYGON_TBL + WHERE (# f1) > 2; + two | center +-----+------------------------------------- + | (1.33333333333333,1.33333333333333) + | (2.33333333333333,1.33333333333333) +(2 rows) + +-- "is horizontal" function +SELECT '' AS two, p1.f1 + FROM POINT_TBL p1 + WHERE ishorizontal(p1.f1, point '(0,0)'); + two | f1 +-----+--------- + | (0,0) + | (-10,0) +(2 rows) + +-- "is horizontal" operator +SELECT '' AS two, p1.f1 + FROM POINT_TBL p1 + WHERE p1.f1 ?- point '(0,0)'; + two | f1 +-----+--------- + | (0,0) + | (-10,0) +(2 rows) + +-- "is vertical" function +SELECT '' AS one, p1.f1 + FROM POINT_TBL p1 + WHERE isvertical(p1.f1, point '(5.1,34.5)'); + one | f1 +-----+------------ + | (5.1,34.5) +(1 row) + +-- "is vertical" operator +SELECT '' AS one, p1.f1 + FROM POINT_TBL p1 + WHERE p1.f1 ?| point '(5.1,34.5)'; + one | f1 +-----+------------ + | (5.1,34.5) +(1 row) + +-- +-- Line segments +-- +-- intersection +SELECT '' AS count, p.f1, l.s, l.s # p.f1 AS intersection + FROM LSEG_TBL l, POINT_TBL p; +ERROR: Unable to identify an operator '#' for types 'lseg' and 'point' + You will have to retype this query using an explicit cast +-- closest point +SELECT '' AS thirty, p.f1, l.s, p.f1 ## l.s AS closest + FROM LSEG_TBL l, POINT_TBL p; + thirty | f1 | s | closest +--------+------------+-------------------------------+--------------------------------------- + | (0,0) | [(1,2),(3,4)] | (1,2) + | (-10,0) | [(1,2),(3,4)] | (1,2) + | (-3,4) | [(1,2),(3,4)] | (1,2) + | (5.1,34.5) | [(1,2),(3,4)] | (3,4) + | (-5,-12) | [(1,2),(3,4)] | (1,2) + | (10,10) | [(1,2),(3,4)] | (3,4) + | (0,0) | [(0,0),(6,6)] | (-0,0) + | (-10,0) | [(0,0),(6,6)] | (0,0) + | (-3,4) | [(0,0),(6,6)] | (0.5,0.5) + | (5.1,34.5) | [(0,0),(6,6)] | (6,6) + | (-5,-12) | [(0,0),(6,6)] | (0,0) + | (10,10) | [(0,0),(6,6)] | (6,6) + | (0,0) | [(10,-10),(-3,-4)] | (-2.04878048780488,-4.4390243902439) + | (-10,0) | [(10,-10),(-3,-4)] | (-3,-4) + | (-3,4) | [(10,-10),(-3,-4)] | (-3,-4) + | (5.1,34.5) | [(10,-10),(-3,-4)] | (-3,-4) + | (-5,-12) | [(10,-10),(-3,-4)] | (-1.60487804878049,-4.64390243902439) + | (10,10) | [(10,-10),(-3,-4)] | (2.39024390243902,-6.48780487804878) + | (0,0) | [(-1000000,200),(300000,-40)] | (0.0028402365895872,15.384614860264) + | (-10,0) | [(-1000000,200),(300000,-40)] | (-9.99715942258202,15.3864610140472) + | (-3,4) | [(-1000000,200),(300000,-40)] | (-2.99789812267519,15.3851688427303) + | (5.1,34.5) | [(-1000000,200),(300000,-40)] | (5.09647083221496,15.3836744976925) + | (-5,-12) | [(-1000000,200),(300000,-40)] | (-4.99494420845634,15.3855375281616) + | (10,10) | [(-1000000,200),(300000,-40)] | (10.000993741978,15.3827690473092) + | (0,0) | [(11,22),(33,44)] | (11,22) + | (-10,0) | [(11,22),(33,44)] | (11,22) + | (-3,4) | [(11,22),(33,44)] | (11,22) + | (5.1,34.5) | [(11,22),(33,44)] | (14.3,25.3) + | (-5,-12) | [(11,22),(33,44)] | (11,22) + | (10,10) | [(11,22),(33,44)] | (11,22) +(30 rows) + +-- +-- Lines +-- +-- +-- Boxes +-- +SELECT '' as six, box(f1) AS box FROM CIRCLE_TBL; + six | box +-----+---------------------------------------------------------------------------- + | (2.12132034355964,2.12132034355964),(-2.12132034355964,-2.12132034355964) + | (71.7106781186547,72.7106781186547),(-69.7106781186547,-68.7106781186547) + | (4.53553390593274,6.53553390593274),(-2.53553390593274,-0.535533905932737) + | (3.12132034355964,4.12132034355964),(-1.12132034355964,-0.121320343559642) + | (107.071067811865,207.071067811865),(92.9289321881345,192.928932188135) + | (170.710678118655,70.7106781186547),(29.2893218813453,-70.7106781186547) +(6 rows) + +-- translation +SELECT '' AS twentyfour, b.f1 + p.f1 AS translation + FROM BOX_TBL b, POINT_TBL p; + twentyfour | translation +------------+------------------------- + | (2,2),(0,0) + | (3,3),(1,1) + | (2.5,3.5),(2.5,2.5) + | (3,3),(3,3) + | (-8,2),(-10,0) + | (-7,3),(-9,1) + | (-7.5,3.5),(-7.5,2.5) + | (-7,3),(-7,3) + | (-1,6),(-3,4) + | (0,7),(-2,5) + | (-0.5,7.5),(-0.5,6.5) + | (0,7),(0,7) + | (7.1,36.5),(5.1,34.5) + | (8.1,37.5),(6.1,35.5) + | (7.6,38),(7.6,37) + | (8.1,37.5),(8.1,37.5) + | (-3,-10),(-5,-12) + | (-2,-9),(-4,-11) + | (-2.5,-8.5),(-2.5,-9.5) + | (-2,-9),(-2,-9) + | (12,12),(10,10) + | (13,13),(11,11) + | (12.5,13.5),(12.5,12.5) + | (13,13),(13,13) +(24 rows) + +SELECT '' AS twentyfour, b.f1 - p.f1 AS translation + FROM BOX_TBL b, POINT_TBL p; + twentyfour | translation +------------+--------------------------- + | (2,2),(0,0) + | (3,3),(1,1) + | (2.5,3.5),(2.5,2.5) + | (3,3),(3,3) + | (12,2),(10,0) + | (13,3),(11,1) + | (12.5,3.5),(12.5,2.5) + | (13,3),(13,3) + | (5,-2),(3,-4) + | (6,-1),(4,-3) + | (5.5,-0.5),(5.5,-1.5) + | (6,-1),(6,-1) + | (-3.1,-32.5),(-5.1,-34.5) + | (-2.1,-31.5),(-4.1,-33.5) + | (-2.6,-31),(-2.6,-32) + | (-2.1,-31.5),(-2.1,-31.5) + | (7,14),(5,12) + | (8,15),(6,13) + | (7.5,15.5),(7.5,14.5) + | (8,15),(8,15) + | (-8,-8),(-10,-10) + | (-7,-7),(-9,-9) + | (-7.5,-6.5),(-7.5,-7.5) + | (-7,-7),(-7,-7) +(24 rows) + +-- scaling and rotation +SELECT '' AS twentyfour, b.f1 * p.f1 AS rotation + FROM BOX_TBL b, POINT_TBL p; + twentyfour | rotation +------------+----------------------------- + | (0,0),(0,0) + | (0,0),(0,0) + | (0,0),(0,0) + | (0,0),(0,0) + | (-0,0),(-20,-20) + | (-10,-10),(-30,-30) + | (-25,-25),(-25,-35) + | (-30,-30),(-30,-30) + | (-0,2),(-14,0) + | (-7,3),(-21,1) + | (-17.5,2.5),(-21.5,-0.5) + | (-21,3),(-21,3) + | (0,79.2),(-58.8,0) + | (-29.4,118.8),(-88.2,39.6) + | (-73.5,104.1),(-108,99) + | (-88.2,118.8),(-88.2,118.8) + | (14,-0),(0,-34) + | (21,-17),(7,-51) + | (29.5,-42.5),(17.5,-47.5) + | (21,-51),(21,-51) + | (0,40),(0,0) + | (0,60),(0,20) + | (0,60),(-10,50) + | (0,60),(0,60) +(24 rows) + +SELECT '' AS twenty, b.f1 / p.f1 AS rotation + FROM BOX_TBL b, POINT_TBL p + WHERE (p.f1 <-> point '(0,0)') >= 1; + twenty | rotation +--------+----------------------------------------------------------------------------------- + | (0,-0),(-0.2,-0.2) + | (-0.1,-0.1),(-0.3,-0.3) + | (-0.25,-0.25),(-0.25,-0.35) + | (-0.3,-0.3),(-0.3,-0.3) + | (0.08,-0),(0,-0.56) + | (0.12,-0.28),(0.04,-0.84) + | (0.26,-0.7),(0.1,-0.82) + | (0.12,-0.84),(0.12,-0.84) + | (0.0651176557643925,0),(0,-0.0483449262493217) + | (0.0976764836465887,-0.0241724631246608),(0.0325588278821962,-0.0725173893739825) + | (0.109762715208919,-0.0562379754328844),(0.0813970697054906,-0.0604311578116521) + | (0.0976764836465887,-0.0725173893739825),(0.0976764836465887,-0.0725173893739825) + | (-0,0.0828402366863905),(-0.201183431952663,0) + | (-0.100591715976331,0.124260355029586),(-0.301775147928994,0.0414201183431953) + | (-0.251479289940828,0.103550295857988),(-0.322485207100592,0.0739644970414201) + | (-0.301775147928994,0.124260355029586),(-0.301775147928994,0.124260355029586) + | (0.2,0),(0,0) + | (0.3,0),(0.1,0) + | (0.3,0.05),(0.25,0) + | (0.3,0),(0.3,0) +(20 rows) + +-- +-- Paths +-- +SET geqo TO 'off'; +SELECT '' AS eight, points(f1) AS npoints, f1 AS path FROM PATH_TBL; + eight | npoints | path +-------+---------+--------------------------- + | 2 | [(1,2),(3,4)] + | 2 | ((1,2),(3,4)) + | 4 | [(0,0),(3,0),(4,5),(1,6)] + | 2 | ((1,2),(3,4)) + | 2 | ((1,2),(3,4)) + | 2 | [(1,2),(3,4)] + | 2 | [(11,12),(13,14)] + | 2 | ((11,12),(13,14)) +(8 rows) + +SELECT '' AS four, path(f1) FROM POLYGON_TBL; + four | path +------+--------------------- + | ((2,0),(2,4),(0,0)) + | ((3,1),(3,3),(1,0)) + | ((0,0)) + | ((0,1),(0,1)) +(4 rows) + +-- translation +SELECT '' AS eight, p1.f1 + point '(10,10)' AS dist_add + FROM PATH_TBL p1; + eight | dist_add +-------+----------------------------------- + | [(11,12),(13,14)] + | ((11,12),(13,14)) + | [(10,10),(13,10),(14,15),(11,16)] + | ((11,12),(13,14)) + | ((11,12),(13,14)) + | [(11,12),(13,14)] + | [(21,22),(23,24)] + | ((21,22),(23,24)) +(8 rows) + +-- scaling and rotation +SELECT '' AS eight, p1.f1 * point '(2,-1)' AS dist_mul + FROM PATH_TBL p1; + eight | dist_mul +-------+------------------------------ + | [(4,3),(10,5)] + | ((4,3),(10,5)) + | [(0,0),(6,-3),(13,6),(8,11)] + | ((4,3),(10,5)) + | ((4,3),(10,5)) + | [(4,3),(10,5)] + | [(34,13),(40,15)] + | ((34,13),(40,15)) +(8 rows) + +RESET geqo; +-- +-- Polygons +-- +-- containment +SELECT '' AS twentyfour, p.f1, poly.f1, poly.f1 ~ p.f1 AS contains + FROM POLYGON_TBL poly, POINT_TBL p; + twentyfour | f1 | f1 | contains +------------+------------+---------------------+---------- + | (0,0) | ((2,0),(2,4),(0,0)) | t + | (-10,0) | ((2,0),(2,4),(0,0)) | f + | (-3,4) | ((2,0),(2,4),(0,0)) | f + | (5.1,34.5) | ((2,0),(2,4),(0,0)) | f + | (-5,-12) | ((2,0),(2,4),(0,0)) | f + | (10,10) | ((2,0),(2,4),(0,0)) | f + | (0,0) | ((3,1),(3,3),(1,0)) | f + | (-10,0) | ((3,1),(3,3),(1,0)) | f + | (-3,4) | ((3,1),(3,3),(1,0)) | f + | (5.1,34.5) | ((3,1),(3,3),(1,0)) | f + | (-5,-12) | ((3,1),(3,3),(1,0)) | f + | (10,10) | ((3,1),(3,3),(1,0)) | f + | (0,0) | ((0,0)) | t + | (-10,0) | ((0,0)) | f + | (-3,4) | ((0,0)) | f + | (5.1,34.5) | ((0,0)) | f + | (-5,-12) | ((0,0)) | f + | (10,10) | ((0,0)) | f + | (0,0) | ((0,1),(0,1)) | f + | (-10,0) | ((0,1),(0,1)) | f + | (-3,4) | ((0,1),(0,1)) | f + | (5.1,34.5) | ((0,1),(0,1)) | f + | (-5,-12) | ((0,1),(0,1)) | f + | (10,10) | ((0,1),(0,1)) | f +(24 rows) + +SELECT '' AS twentyfour, p.f1, poly.f1, p.f1 @ poly.f1 AS contained + FROM POLYGON_TBL poly, POINT_TBL p; + twentyfour | f1 | f1 | contained +------------+------------+---------------------+----------- + | (0,0) | ((2,0),(2,4),(0,0)) | t + | (-10,0) | ((2,0),(2,4),(0,0)) | f + | (-3,4) | ((2,0),(2,4),(0,0)) | f + | (5.1,34.5) | ((2,0),(2,4),(0,0)) | f + | (-5,-12) | ((2,0),(2,4),(0,0)) | f + | (10,10) | ((2,0),(2,4),(0,0)) | f + | (0,0) | ((3,1),(3,3),(1,0)) | f + | (-10,0) | ((3,1),(3,3),(1,0)) | f + | (-3,4) | ((3,1),(3,3),(1,0)) | f + | (5.1,34.5) | ((3,1),(3,3),(1,0)) | f + | (-5,-12) | ((3,1),(3,3),(1,0)) | f + | (10,10) | ((3,1),(3,3),(1,0)) | f + | (0,0) | ((0,0)) | t + | (-10,0) | ((0,0)) | f + | (-3,4) | ((0,0)) | f + | (5.1,34.5) | ((0,0)) | f + | (-5,-12) | ((0,0)) | f + | (10,10) | ((0,0)) | f + | (0,0) | ((0,1),(0,1)) | f + | (-10,0) | ((0,1),(0,1)) | f + | (-3,4) | ((0,1),(0,1)) | f + | (5.1,34.5) | ((0,1),(0,1)) | f + | (-5,-12) | ((0,1),(0,1)) | f + | (10,10) | ((0,1),(0,1)) | f +(24 rows) + +SELECT '' AS four, points(f1) AS npoints, f1 AS polygon + FROM POLYGON_TBL; + four | npoints | polygon +------+---------+--------------------- + | 3 | ((2,0),(2,4),(0,0)) + | 3 | ((3,1),(3,3),(1,0)) + | 1 | ((0,0)) + | 2 | ((0,1),(0,1)) +(4 rows) + +SELECT '' AS four, polygon(f1) + FROM BOX_TBL; + four | polygon +------+------------------------------------------- + | ((0,0),(0,2),(2,2),(2,0)) + | ((1,1),(1,3),(3,3),(3,1)) + | ((2.5,2.5),(2.5,3.5),(2.5,3.5),(2.5,2.5)) + | ((3,3),(3,3),(3,3),(3,3)) +(4 rows) + +SELECT '' AS four, polygon(f1) + FROM PATH_TBL WHERE isclosed(f1); + four | polygon +------+------------------- + | ((1,2),(3,4)) + | ((1,2),(3,4)) + | ((1,2),(3,4)) + | ((11,12),(13,14)) +(4 rows) + +SELECT '' AS four, f1 AS open_path, polygon( pclose(f1)) AS polygon + FROM PATH_TBL + WHERE isopen(f1); + four | open_path | polygon +------+---------------------------+--------------------------- + | [(1,2),(3,4)] | ((1,2),(3,4)) + | [(0,0),(3,0),(4,5),(1,6)] | ((0,0),(3,0),(4,5),(1,6)) + | [(1,2),(3,4)] | ((1,2),(3,4)) + | [(11,12),(13,14)] | ((11,12),(13,14)) +(4 rows) + +-- convert circles to polygons using the default number of points +SELECT '' AS six, polygon(f1) + FROM CIRCLE_TBL; + six | polygon +-----+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + | ((-3,0),(-2.59807621135076,1.50000000000442),(-1.49999999999116,2.59807621135842),(1.53102359017709e-11,3),(1.50000000001768,2.59807621134311),(2.59807621136607,1.4999999999779),(3,-3.06204718035418e-11),(2.59807621133545,-1.50000000003094),(1.49999999996464,-2.59807621137373),(-4.59307077053127e-11,-3),(-1.5000000000442,-2.5980762113278),(-2.59807621138138,-1.49999999995138)) + | ((-99,2),(-85.6025403783588,52.0000000001473),(-48.9999999997054,88.602540378614),(1.00000000051034,102),(51.0000000005893,88.6025403781036),(87.6025403788692,51.9999999992634),(101,1.99999999897932),(87.6025403778485,-48.0000000010313),(50.9999999988214,-84.6025403791243),(0.999999998468976,-98),(-49.0000000014732,-84.6025403775933),(-85.6025403793795,-47.9999999983795)) + | ((-4,3),(-3.33012701891794,5.50000000000737),(-1.49999999998527,7.3301270189307),(1.00000000002552,8),(3.50000000002946,7.33012701890518),(5.33012701894346,5.49999999996317),(6,2.99999999994897),(5.33012701889242,0.499999999948437),(3.49999999994107,-1.33012701895622),(0.999999999923449,-2),(-1.50000000007366,-1.33012701887967),(-3.33012701896897,0.500000000081028)) + | ((-2,2),(-1.59807621135076,3.50000000000442),(-0.499999999991161,4.59807621135842),(1.00000000001531,5),(2.50000000001768,4.59807621134311),(3.59807621136607,3.4999999999779),(4,1.99999999996938),(3.59807621133545,0.499999999969062),(2.49999999996464,-0.598076211373729),(0.999999999954069,-1),(-0.500000000044197,-0.598076211327799),(-1.59807621138138,0.500000000048616)) + | ((90,200),(91.3397459621641,205.000000000015),(95.0000000000295,208.660254037861),(100.000000000051,210),(105.000000000059,208.66025403781),(108.660254037887,204.999999999926),(110,199.999999999898),(108.660254037785,194.999999999897),(104.999999999882,191.339745962088),(99.9999999998469,190),(94.9999999998527,191.339745962241),(91.3397459620621,195.000000000162)) + | ((0,0),(13.3974596216412,50.0000000001473),(50.0000000002946,86.602540378614),(100.00000000051,100),(150.000000000589,86.6025403781036),(186.602540378869,49.9999999992634),(200,-1.02068239345139e-09),(186.602540377848,-50.0000000010313),(149.999999998821,-86.6025403791243),(99.999999998469,-100),(49.9999999985268,-86.6025403775933),(13.3974596206205,-49.9999999983795)) +(6 rows) + +-- convert the circle to an 8-point polygon +SELECT '' AS six, polygon(8, f1) + FROM CIRCLE_TBL; + six | polygon +-----+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + | ((-3,0),(-2.12132034355423,2.12132034356506),(1.53102359017709e-11,3),(2.12132034357588,2.1213203435434),(3,-3.06204718035418e-11),(2.12132034353258,-2.12132034358671),(-4.59307077053127e-11,-3),(-2.12132034359753,-2.12132034352175)) + | ((-99,2),(-69.7106781184743,72.7106781188352),(1.00000000051034,102),(71.710678119196,72.7106781181135),(101,1.99999999897932),(71.7106781177526,-68.7106781195569),(0.999999998468976,-98),(-69.7106781199178,-68.7106781173917)) + | ((-4,3),(-2.53553390592372,6.53553390594176),(1.00000000002552,8),(4.5355339059598,6.53553390590567),(6,2.99999999994897),(4.53553390588763,-0.535533905977846),(0.999999999923449,-2),(-2.53553390599589,-0.535533905869586)) + | ((-2,2),(-1.12132034355423,4.12132034356506),(1.00000000001531,5),(3.12132034357588,4.1213203435434),(4,1.99999999996938),(3.12132034353258,-0.121320343586707),(0.999999999954069,-1),(-1.12132034359753,-0.121320343521752)) + | ((90,200),(92.9289321881526,207.071067811884),(100.000000000051,210),(107.07106781192,207.071067811811),(110,199.999999999898),(107.071067811775,192.928932188044),(99.9999999998469,190),(92.9289321880082,192.928932188261)) + | ((0,0),(29.2893218815257,70.7106781188352),(100.00000000051,100),(170.710678119196,70.7106781181135),(200,-1.02068239345139e-09),(170.710678117753,-70.7106781195569),(99.999999998469,-100),(29.2893218800822,-70.7106781173917)) +(6 rows) + +-- +-- Circles +-- +SELECT '' AS six, circle(f1, 50.0) + FROM POINT_TBL; + six | circle +-----+----------------- + | <(0,0),50> + | <(-10,0),50> + | <(-3,4),50> + | <(5.1,34.5),50> + | <(-5,-12),50> + | <(10,10),50> +(6 rows) + +SELECT '' AS four, circle(f1) + FROM BOX_TBL; + four | circle +------+------------------------- + | <(1,1),1.4142135623731> + | <(2,2),1.4142135623731> + | <(2.5,3),0.5> + | <(3,3),0> +(4 rows) + +SELECT '' AS two, circle(f1) + FROM POLYGON_TBL + WHERE (# f1) >= 3; + two | circle +-----+-------------------------------------------------------- + | <(1.33333333333333,1.33333333333333),2.04168905063636> + | <(2.33333333333333,1.33333333333333),1.47534300379185> +(2 rows) + +SELECT '' AS twentyfour, c1.f1 AS circle, p1.f1 AS point, (p1.f1 <-> c1.f1) AS distance + FROM CIRCLE_TBL c1, POINT_TBL p1 + WHERE (p1.f1 <-> c1.f1) > 0 + ORDER BY distance, circle, point using <<; + twentyfour | circle | point | distance +------------+----------------+------------+------------------ + | <(100,0),100> | (5.1,34.5) | 0.97653192697797 + | <(1,2),3> | (-3,4) | 1.47213595499958 + | <(0,0),3> | (-3,4) | 2 + | <(100,0),100> | (-3,4) | 3.07764064044152 + | <(100,0),100> | (-5,-12) | 5.68348972285122 + | <(1,3),5> | (-10,0) | 6.40175425099138 + | <(1,3),5> | (10,10) | 6.40175425099138 + | <(0,0),3> | (-10,0) | 7 + | <(1,2),3> | (-10,0) | 8.18033988749895 + | <(1,2),3> | (10,10) | 9.0415945787923 + | <(0,0),3> | (-5,-12) | 10 + | <(100,0),100> | (-10,0) | 10 + | <(0,0),3> | (10,10) | 11.142135623731 + | <(1,3),5> | (-5,-12) | 11.1554944214035 + | <(1,2),3> | (-5,-12) | 12.2315462117278 + | <(1,3),5> | (5.1,34.5) | 26.7657047773223 + | <(1,2),3> | (5.1,34.5) | 29.757594539282 + | <(0,0),3> | (5.1,34.5) | 31.8749193547455 + | <(100,200),10> | (5.1,34.5) | 180.778038568384 + | <(100,200),10> | (10,10) | 200.237960416286 + | <(100,200),10> | (-3,4) | 211.415898254845 + | <(100,200),10> | (0,0) | 213.606797749979 + | <(100,200),10> | (-10,0) | 218.254244210267 + | <(100,200),10> | (-5,-12) | 226.577682802077 +(24 rows) + diff --git a/src/test/regress/expected/horology-solaris-1947.out b/src/test/regress/expected/horology-solaris-1947.out new file mode 100644 index 0000000000..8dd6611b73 --- /dev/null +++ b/src/test/regress/expected/horology-solaris-1947.out @@ -0,0 +1,1588 @@ +-- +-- HOROLOGY +-- +-- +-- datetime, timespan arithmetic +-- +SELECT datetime '1996-03-01' - timespan '1 second' AS "Feb 29"; + Feb 29 +------------------------------ + Thu Feb 29 23:59:59 1996 PST +(1 row) + +SELECT datetime '1999-03-01' - timespan '1 second' AS "Feb 28"; + Feb 28 +------------------------------ + Sun Feb 28 23:59:59 1999 PST +(1 row) + +SELECT datetime '2000-03-01' - timespan '1 second' AS "Feb 29"; + Feb 29 +------------------------------ + Tue Feb 29 23:59:59 2000 PST +(1 row) + +SELECT datetime '1999-12-01' + timespan '1 month - 1 second' AS "Dec 31"; + Dec 31 +------------------------------ + Fri Dec 31 23:59:59 1999 PST +(1 row) + +CREATE TABLE TEMP_DATETIME (f1 datetime); +-- get some candidate input values +INSERT INTO TEMP_DATETIME (f1) + SELECT d1 FROM DATETIME_TBL + WHERE d1 BETWEEN '13-jun-1957' AND '1-jan-1997' + OR d1 BETWEEN '1-jan-1999' AND '1-jan-2010'; +SELECT '' AS ten, f1 AS datetime + FROM TEMP_DATETIME + ORDER BY datetime; + ten | datetime +-----+------------------------------ + | epoch + | Wed Feb 28 17:32:01 1996 PST + | Thu Feb 29 17:32:01 1996 PST + | Fri Mar 01 17:32:01 1996 PST + | Mon Dec 30 17:32:01 1996 PST + | Tue Dec 31 17:32:01 1996 PST + | Fri Dec 31 17:32:01 1999 PST + | Sat Jan 01 17:32:01 2000 PST + | Sun Dec 31 17:32:01 2000 PST + | Mon Jan 01 17:32:01 2001 PST +(10 rows) + +SELECT '' AS hundred, d.f1 AS datetime, t.f1 AS timespan, d.f1 + t.f1 AS plus + FROM TEMP_DATETIME d, TIMESPAN_TBL t + ORDER BY plus, datetime, timespan; + hundred | datetime | timespan | plus +---------+------------------------------+-------------------------------+------------------------------ + | epoch | @ 14 secs ago | Wed Dec 31 15:59:46 1969 PST + | epoch | @ 1 min | Wed Dec 31 16:01:00 1969 PST + | epoch | @ 5 hours | Wed Dec 31 21:00:00 1969 PST + | epoch | @ 1 day 2 hours 3 mins 4 secs | Thu Jan 01 18:03:04 1970 PST + | epoch | @ 10 days | Sat Jan 10 16:00:00 1970 PST + | epoch | @ 3 mons | Tue Mar 31 16:00:00 1970 PST + | epoch | @ 5 mons | Sun May 31 17:00:00 1970 PDT + | epoch | @ 5 mons 12 hours | Mon Jun 01 05:00:00 1970 PDT + | epoch | @ 6 years | Wed Dec 31 16:00:00 1975 PST + | Wed Feb 28 17:32:01 1996 PST | @ 14 secs ago | Wed Feb 28 17:31:47 1996 PST + | Wed Feb 28 17:32:01 1996 PST | @ 1 min | Wed Feb 28 17:33:01 1996 PST + | Wed Feb 28 17:32:01 1996 PST | @ 5 hours | Wed Feb 28 22:32:01 1996 PST + | Thu Feb 29 17:32:01 1996 PST | @ 14 secs ago | Thu Feb 29 17:31:47 1996 PST + | Thu Feb 29 17:32:01 1996 PST | @ 1 min | Thu Feb 29 17:33:01 1996 PST + | Wed Feb 28 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Thu Feb 29 19:35:05 1996 PST + | Thu Feb 29 17:32:01 1996 PST | @ 5 hours | Thu Feb 29 22:32:01 1996 PST + | Fri Mar 01 17:32:01 1996 PST | @ 14 secs ago | Fri Mar 01 17:31:47 1996 PST + | Fri Mar 01 17:32:01 1996 PST | @ 1 min | Fri Mar 01 17:33:01 1996 PST + | Thu Feb 29 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Fri Mar 01 19:35:05 1996 PST + | Fri Mar 01 17:32:01 1996 PST | @ 5 hours | Fri Mar 01 22:32:01 1996 PST + | Fri Mar 01 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Sat Mar 02 19:35:05 1996 PST + | Wed Feb 28 17:32:01 1996 PST | @ 10 days | Sat Mar 09 17:32:01 1996 PST + | Thu Feb 29 17:32:01 1996 PST | @ 10 days | Sun Mar 10 17:32:01 1996 PST + | Fri Mar 01 17:32:01 1996 PST | @ 10 days | Mon Mar 11 17:32:01 1996 PST + | Wed Feb 28 17:32:01 1996 PST | @ 3 mons | Tue May 28 18:32:01 1996 PDT + | Thu Feb 29 17:32:01 1996 PST | @ 3 mons | Wed May 29 18:32:01 1996 PDT + | Fri Mar 01 17:32:01 1996 PST | @ 3 mons | Sat Jun 01 18:32:01 1996 PDT + | Wed Feb 28 17:32:01 1996 PST | @ 5 mons | Sun Jul 28 18:32:01 1996 PDT + | Wed Feb 28 17:32:01 1996 PST | @ 5 mons 12 hours | Mon Jul 29 06:32:01 1996 PDT + | Thu Feb 29 17:32:01 1996 PST | @ 5 mons | Mon Jul 29 18:32:01 1996 PDT + | Thu Feb 29 17:32:01 1996 PST | @ 5 mons 12 hours | Tue Jul 30 06:32:01 1996 PDT + | Fri Mar 01 17:32:01 1996 PST | @ 5 mons | Thu Aug 01 18:32:01 1996 PDT + | Fri Mar 01 17:32:01 1996 PST | @ 5 mons 12 hours | Fri Aug 02 06:32:01 1996 PDT + | Mon Dec 30 17:32:01 1996 PST | @ 14 secs ago | Mon Dec 30 17:31:47 1996 PST + | Mon Dec 30 17:32:01 1996 PST | @ 1 min | Mon Dec 30 17:33:01 1996 PST + | Mon Dec 30 17:32:01 1996 PST | @ 5 hours | Mon Dec 30 22:32:01 1996 PST + | Tue Dec 31 17:32:01 1996 PST | @ 14 secs ago | Tue Dec 31 17:31:47 1996 PST + | Tue Dec 31 17:32:01 1996 PST | @ 1 min | Tue Dec 31 17:33:01 1996 PST + | Mon Dec 30 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Tue Dec 31 19:35:05 1996 PST + | Tue Dec 31 17:32:01 1996 PST | @ 5 hours | Tue Dec 31 22:32:01 1996 PST + | Tue Dec 31 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Wed Jan 01 19:35:05 1997 PST + | Mon Dec 30 17:32:01 1996 PST | @ 10 days | Thu Jan 09 17:32:01 1997 PST + | Tue Dec 31 17:32:01 1996 PST | @ 10 days | Fri Jan 10 17:32:01 1997 PST + | Mon Dec 30 17:32:01 1996 PST | @ 3 mons | Sun Mar 30 17:32:01 1997 PST + | Tue Dec 31 17:32:01 1996 PST | @ 3 mons | Mon Mar 31 17:32:01 1997 PST + | Mon Dec 30 17:32:01 1996 PST | @ 5 mons | Fri May 30 18:32:01 1997 PDT + | Mon Dec 30 17:32:01 1996 PST | @ 5 mons 12 hours | Sat May 31 06:32:01 1997 PDT + | Tue Dec 31 17:32:01 1996 PST | @ 5 mons | Sat May 31 18:32:01 1997 PDT + | Tue Dec 31 17:32:01 1996 PST | @ 5 mons 12 hours | Sun Jun 01 06:32:01 1997 PDT + | Fri Dec 31 17:32:01 1999 PST | @ 14 secs ago | Fri Dec 31 17:31:47 1999 PST + | Fri Dec 31 17:32:01 1999 PST | @ 1 min | Fri Dec 31 17:33:01 1999 PST + | Fri Dec 31 17:32:01 1999 PST | @ 5 hours | Fri Dec 31 22:32:01 1999 PST + | Sat Jan 01 17:32:01 2000 PST | @ 14 secs ago | Sat Jan 01 17:31:47 2000 PST + | Sat Jan 01 17:32:01 2000 PST | @ 1 min | Sat Jan 01 17:33:01 2000 PST + | Fri Dec 31 17:32:01 1999 PST | @ 1 day 2 hours 3 mins 4 secs | Sat Jan 01 19:35:05 2000 PST + | Sat Jan 01 17:32:01 2000 PST | @ 5 hours | Sat Jan 01 22:32:01 2000 PST + | Sat Jan 01 17:32:01 2000 PST | @ 1 day 2 hours 3 mins 4 secs | Sun Jan 02 19:35:05 2000 PST + | Fri Dec 31 17:32:01 1999 PST | @ 10 days | Mon Jan 10 17:32:01 2000 PST + | Sat Jan 01 17:32:01 2000 PST | @ 10 days | Tue Jan 11 17:32:01 2000 PST + | Fri Dec 31 17:32:01 1999 PST | @ 3 mons | Fri Mar 31 17:32:01 2000 PST + | Sat Jan 01 17:32:01 2000 PST | @ 3 mons | Sat Apr 01 17:32:01 2000 PST + | Fri Dec 31 17:32:01 1999 PST | @ 5 mons | Wed May 31 18:32:01 2000 PDT + | Fri Dec 31 17:32:01 1999 PST | @ 5 mons 12 hours | Thu Jun 01 06:32:01 2000 PDT + | Sat Jan 01 17:32:01 2000 PST | @ 5 mons | Thu Jun 01 18:32:01 2000 PDT + | Sat Jan 01 17:32:01 2000 PST | @ 5 mons 12 hours | Fri Jun 02 06:32:01 2000 PDT + | Sun Dec 31 17:32:01 2000 PST | @ 14 secs ago | Sun Dec 31 17:31:47 2000 PST + | Sun Dec 31 17:32:01 2000 PST | @ 1 min | Sun Dec 31 17:33:01 2000 PST + | Sun Dec 31 17:32:01 2000 PST | @ 5 hours | Sun Dec 31 22:32:01 2000 PST + | Mon Jan 01 17:32:01 2001 PST | @ 14 secs ago | Mon Jan 01 17:31:47 2001 PST + | Mon Jan 01 17:32:01 2001 PST | @ 1 min | Mon Jan 01 17:33:01 2001 PST + | Sun Dec 31 17:32:01 2000 PST | @ 1 day 2 hours 3 mins 4 secs | Mon Jan 01 19:35:05 2001 PST + | Mon Jan 01 17:32:01 2001 PST | @ 5 hours | Mon Jan 01 22:32:01 2001 PST + | Mon Jan 01 17:32:01 2001 PST | @ 1 day 2 hours 3 mins 4 secs | Tue Jan 02 19:35:05 2001 PST + | Sun Dec 31 17:32:01 2000 PST | @ 10 days | Wed Jan 10 17:32:01 2001 PST + | Mon Jan 01 17:32:01 2001 PST | @ 10 days | Thu Jan 11 17:32:01 2001 PST + | Sun Dec 31 17:32:01 2000 PST | @ 3 mons | Sat Mar 31 17:32:01 2001 PST + | Mon Jan 01 17:32:01 2001 PST | @ 3 mons | Sun Apr 01 18:32:01 2001 PDT + | Sun Dec 31 17:32:01 2000 PST | @ 5 mons | Thu May 31 18:32:01 2001 PDT + | Sun Dec 31 17:32:01 2000 PST | @ 5 mons 12 hours | Fri Jun 01 06:32:01 2001 PDT + | Mon Jan 01 17:32:01 2001 PST | @ 5 mons | Fri Jun 01 18:32:01 2001 PDT + | Mon Jan 01 17:32:01 2001 PST | @ 5 mons 12 hours | Sat Jun 02 06:32:01 2001 PDT + | Wed Feb 28 17:32:01 1996 PST | @ 6 years | Thu Feb 28 17:32:01 2002 PST + | Thu Feb 29 17:32:01 1996 PST | @ 6 years | Thu Feb 28 17:32:01 2002 PST + | Fri Mar 01 17:32:01 1996 PST | @ 6 years | Fri Mar 01 17:32:01 2002 PST + | Mon Dec 30 17:32:01 1996 PST | @ 6 years | Mon Dec 30 17:32:01 2002 PST + | Tue Dec 31 17:32:01 1996 PST | @ 6 years | Tue Dec 31 17:32:01 2002 PST + | epoch | @ 34 years | Wed Dec 31 16:00:00 2003 PST + | Fri Dec 31 17:32:01 1999 PST | @ 6 years | Sat Dec 31 17:32:01 2005 PST + | Sat Jan 01 17:32:01 2000 PST | @ 6 years | Sun Jan 01 17:32:01 2006 PST + | Sun Dec 31 17:32:01 2000 PST | @ 6 years | Sun Dec 31 17:32:01 2006 PST + | Mon Jan 01 17:32:01 2001 PST | @ 6 years | Mon Jan 01 17:32:01 2007 PST + | Wed Feb 28 17:32:01 1996 PST | @ 34 years | Thu Feb 28 17:32:01 2030 PST + | Thu Feb 29 17:32:01 1996 PST | @ 34 years | Thu Feb 28 17:32:01 2030 PST + | Fri Mar 01 17:32:01 1996 PST | @ 34 years | Fri Mar 01 17:32:01 2030 PST + | Mon Dec 30 17:32:01 1996 PST | @ 34 years | Mon Dec 30 17:32:01 2030 PST + | Tue Dec 31 17:32:01 1996 PST | @ 34 years | Tue Dec 31 17:32:01 2030 PST + | Fri Dec 31 17:32:01 1999 PST | @ 34 years | Sat Dec 31 17:32:01 2033 PST + | Sat Jan 01 17:32:01 2000 PST | @ 34 years | Sun Jan 01 17:32:01 2034 PST + | Sun Dec 31 17:32:01 2000 PST | @ 34 years | Sun Dec 31 17:32:01 2034 PST + | Mon Jan 01 17:32:01 2001 PST | @ 34 years | Mon Jan 01 17:32:01 2035 PST +(100 rows) + +SELECT '' AS hundred, d.f1 AS datetime, t.f1 AS timespan, d.f1 - t.f1 AS minus + FROM TEMP_DATETIME d, TIMESPAN_TBL t + WHERE isfinite(d.f1) + ORDER BY minus, datetime, timespan; + hundred | datetime | timespan | minus +---------+------------------------------+-------------------------------+------------------------------ + | epoch | @ 34 years | Tue Dec 31 16:00:00 1935 PST + | Wed Feb 28 17:32:01 1996 PST | @ 34 years | Wed Feb 28 17:32:01 1962 PST + | Thu Feb 29 17:32:01 1996 PST | @ 34 years | Wed Feb 28 17:32:01 1962 PST + | Fri Mar 01 17:32:01 1996 PST | @ 34 years | Thu Mar 01 17:32:01 1962 PST + | Mon Dec 30 17:32:01 1996 PST | @ 34 years | Sun Dec 30 17:32:01 1962 PST + | Tue Dec 31 17:32:01 1996 PST | @ 34 years | Mon Dec 31 17:32:01 1962 PST + | epoch | @ 6 years | Tue Dec 31 16:00:00 1963 PST + | Fri Dec 31 17:32:01 1999 PST | @ 34 years | Fri Dec 31 17:32:01 1965 PST + | Sat Jan 01 17:32:01 2000 PST | @ 34 years | Sat Jan 01 17:32:01 1966 PST + | Sun Dec 31 17:32:01 2000 PST | @ 34 years | Sat Dec 31 17:32:01 1966 PST + | Mon Jan 01 17:32:01 2001 PST | @ 34 years | Sun Jan 01 17:32:01 1967 PST + | epoch | @ 5 mons 12 hours | Thu Jul 31 05:00:00 1969 PDT + | epoch | @ 5 mons | Thu Jul 31 17:00:00 1969 PDT + | epoch | @ 3 mons | Tue Sep 30 17:00:00 1969 PDT + | epoch | @ 10 days | Sun Dec 21 16:00:00 1969 PST + | epoch | @ 1 day 2 hours 3 mins 4 secs | Tue Dec 30 13:56:56 1969 PST + | epoch | @ 5 hours | Wed Dec 31 11:00:00 1969 PST + | epoch | @ 1 min | Wed Dec 31 15:59:00 1969 PST + | epoch | @ 14 secs ago | Wed Dec 31 16:00:14 1969 PST + | Wed Feb 28 17:32:01 1996 PST | @ 6 years | Wed Feb 28 17:32:01 1990 PST + | Thu Feb 29 17:32:01 1996 PST | @ 6 years | Wed Feb 28 17:32:01 1990 PST + | Fri Mar 01 17:32:01 1996 PST | @ 6 years | Thu Mar 01 17:32:01 1990 PST + | Mon Dec 30 17:32:01 1996 PST | @ 6 years | Sun Dec 30 17:32:01 1990 PST + | Tue Dec 31 17:32:01 1996 PST | @ 6 years | Mon Dec 31 17:32:01 1990 PST + | Fri Dec 31 17:32:01 1999 PST | @ 6 years | Fri Dec 31 17:32:01 1993 PST + | Sat Jan 01 17:32:01 2000 PST | @ 6 years | Sat Jan 01 17:32:01 1994 PST + | Sun Dec 31 17:32:01 2000 PST | @ 6 years | Sat Dec 31 17:32:01 1994 PST + | Mon Jan 01 17:32:01 2001 PST | @ 6 years | Sun Jan 01 17:32:01 1995 PST + | Wed Feb 28 17:32:01 1996 PST | @ 5 mons 12 hours | Thu Sep 28 06:32:01 1995 PDT + | Wed Feb 28 17:32:01 1996 PST | @ 5 mons | Thu Sep 28 18:32:01 1995 PDT + | Thu Feb 29 17:32:01 1996 PST | @ 5 mons 12 hours | Fri Sep 29 06:32:01 1995 PDT + | Thu Feb 29 17:32:01 1996 PST | @ 5 mons | Fri Sep 29 18:32:01 1995 PDT + | Fri Mar 01 17:32:01 1996 PST | @ 5 mons 12 hours | Sun Oct 01 06:32:01 1995 PDT + | Fri Mar 01 17:32:01 1996 PST | @ 5 mons | Sun Oct 01 18:32:01 1995 PDT + | Wed Feb 28 17:32:01 1996 PST | @ 3 mons | Tue Nov 28 17:32:01 1995 PST + | Thu Feb 29 17:32:01 1996 PST | @ 3 mons | Wed Nov 29 17:32:01 1995 PST + | Fri Mar 01 17:32:01 1996 PST | @ 3 mons | Fri Dec 01 17:32:01 1995 PST + | Wed Feb 28 17:32:01 1996 PST | @ 10 days | Sun Feb 18 17:32:01 1996 PST + | Thu Feb 29 17:32:01 1996 PST | @ 10 days | Mon Feb 19 17:32:01 1996 PST + | Fri Mar 01 17:32:01 1996 PST | @ 10 days | Tue Feb 20 17:32:01 1996 PST + | Wed Feb 28 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Tue Feb 27 15:28:57 1996 PST + | Wed Feb 28 17:32:01 1996 PST | @ 5 hours | Wed Feb 28 12:32:01 1996 PST + | Thu Feb 29 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Wed Feb 28 15:28:57 1996 PST + | Wed Feb 28 17:32:01 1996 PST | @ 1 min | Wed Feb 28 17:31:01 1996 PST + | Wed Feb 28 17:32:01 1996 PST | @ 14 secs ago | Wed Feb 28 17:32:15 1996 PST + | Thu Feb 29 17:32:01 1996 PST | @ 5 hours | Thu Feb 29 12:32:01 1996 PST + | Fri Mar 01 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Thu Feb 29 15:28:57 1996 PST + | Thu Feb 29 17:32:01 1996 PST | @ 1 min | Thu Feb 29 17:31:01 1996 PST + | Thu Feb 29 17:32:01 1996 PST | @ 14 secs ago | Thu Feb 29 17:32:15 1996 PST + | Fri Mar 01 17:32:01 1996 PST | @ 5 hours | Fri Mar 01 12:32:01 1996 PST + | Fri Mar 01 17:32:01 1996 PST | @ 1 min | Fri Mar 01 17:31:01 1996 PST + | Fri Mar 01 17:32:01 1996 PST | @ 14 secs ago | Fri Mar 01 17:32:15 1996 PST + | Mon Dec 30 17:32:01 1996 PST | @ 5 mons 12 hours | Tue Jul 30 06:32:01 1996 PDT + | Mon Dec 30 17:32:01 1996 PST | @ 5 mons | Tue Jul 30 18:32:01 1996 PDT + | Tue Dec 31 17:32:01 1996 PST | @ 5 mons 12 hours | Wed Jul 31 06:32:01 1996 PDT + | Tue Dec 31 17:32:01 1996 PST | @ 5 mons | Wed Jul 31 18:32:01 1996 PDT + | Mon Dec 30 17:32:01 1996 PST | @ 3 mons | Mon Sep 30 18:32:01 1996 PDT + | Tue Dec 31 17:32:01 1996 PST | @ 3 mons | Mon Sep 30 18:32:01 1996 PDT + | Mon Dec 30 17:32:01 1996 PST | @ 10 days | Fri Dec 20 17:32:01 1996 PST + | Tue Dec 31 17:32:01 1996 PST | @ 10 days | Sat Dec 21 17:32:01 1996 PST + | Mon Dec 30 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Sun Dec 29 15:28:57 1996 PST + | Mon Dec 30 17:32:01 1996 PST | @ 5 hours | Mon Dec 30 12:32:01 1996 PST + | Tue Dec 31 17:32:01 1996 PST | @ 1 day 2 hours 3 mins 4 secs | Mon Dec 30 15:28:57 1996 PST + | Mon Dec 30 17:32:01 1996 PST | @ 1 min | Mon Dec 30 17:31:01 1996 PST + | Mon Dec 30 17:32:01 1996 PST | @ 14 secs ago | Mon Dec 30 17:32:15 1996 PST + | Tue Dec 31 17:32:01 1996 PST | @ 5 hours | Tue Dec 31 12:32:01 1996 PST + | Tue Dec 31 17:32:01 1996 PST | @ 1 min | Tue Dec 31 17:31:01 1996 PST + | Tue Dec 31 17:32:01 1996 PST | @ 14 secs ago | Tue Dec 31 17:32:15 1996 PST + | Fri Dec 31 17:32:01 1999 PST | @ 5 mons 12 hours | Sat Jul 31 06:32:01 1999 PDT + | Fri Dec 31 17:32:01 1999 PST | @ 5 mons | Sat Jul 31 18:32:01 1999 PDT + | Sat Jan 01 17:32:01 2000 PST | @ 5 mons 12 hours | Sun Aug 01 06:32:01 1999 PDT + | Sat Jan 01 17:32:01 2000 PST | @ 5 mons | Sun Aug 01 18:32:01 1999 PDT + | Fri Dec 31 17:32:01 1999 PST | @ 3 mons | Thu Sep 30 18:32:01 1999 PDT + | Sat Jan 01 17:32:01 2000 PST | @ 3 mons | Fri Oct 01 18:32:01 1999 PDT + | Fri Dec 31 17:32:01 1999 PST | @ 10 days | Tue Dec 21 17:32:01 1999 PST + | Sat Jan 01 17:32:01 2000 PST | @ 10 days | Wed Dec 22 17:32:01 1999 PST + | Fri Dec 31 17:32:01 1999 PST | @ 1 day 2 hours 3 mins 4 secs | Thu Dec 30 15:28:57 1999 PST + | Fri Dec 31 17:32:01 1999 PST | @ 5 hours | Fri Dec 31 12:32:01 1999 PST + | Sat Jan 01 17:32:01 2000 PST | @ 1 day 2 hours 3 mins 4 secs | Fri Dec 31 15:28:57 1999 PST + | Fri Dec 31 17:32:01 1999 PST | @ 1 min | Fri Dec 31 17:31:01 1999 PST + | Fri Dec 31 17:32:01 1999 PST | @ 14 secs ago | Fri Dec 31 17:32:15 1999 PST + | Sat Jan 01 17:32:01 2000 PST | @ 5 hours | Sat Jan 01 12:32:01 2000 PST + | Sat Jan 01 17:32:01 2000 PST | @ 1 min | Sat Jan 01 17:31:01 2000 PST + | Sat Jan 01 17:32:01 2000 PST | @ 14 secs ago | Sat Jan 01 17:32:15 2000 PST + | Sun Dec 31 17:32:01 2000 PST | @ 5 mons 12 hours | Mon Jul 31 06:32:01 2000 PDT + | Sun Dec 31 17:32:01 2000 PST | @ 5 mons | Mon Jul 31 18:32:01 2000 PDT + | Mon Jan 01 17:32:01 2001 PST | @ 5 mons 12 hours | Tue Aug 01 06:32:01 2000 PDT + | Mon Jan 01 17:32:01 2001 PST | @ 5 mons | Tue Aug 01 18:32:01 2000 PDT + | Sun Dec 31 17:32:01 2000 PST | @ 3 mons | Sat Sep 30 18:32:01 2000 PDT + | Mon Jan 01 17:32:01 2001 PST | @ 3 mons | Sun Oct 01 18:32:01 2000 PDT + | Sun Dec 31 17:32:01 2000 PST | @ 10 days | Thu Dec 21 17:32:01 2000 PST + | Mon Jan 01 17:32:01 2001 PST | @ 10 days | Fri Dec 22 17:32:01 2000 PST + | Sun Dec 31 17:32:01 2000 PST | @ 1 day 2 hours 3 mins 4 secs | Sat Dec 30 15:28:57 2000 PST + | Sun Dec 31 17:32:01 2000 PST | @ 5 hours | Sun Dec 31 12:32:01 2000 PST + | Mon Jan 01 17:32:01 2001 PST | @ 1 day 2 hours 3 mins 4 secs | Sun Dec 31 15:28:57 2000 PST + | Sun Dec 31 17:32:01 2000 PST | @ 1 min | Sun Dec 31 17:31:01 2000 PST + | Sun Dec 31 17:32:01 2000 PST | @ 14 secs ago | Sun Dec 31 17:32:15 2000 PST + | Mon Jan 01 17:32:01 2001 PST | @ 5 hours | Mon Jan 01 12:32:01 2001 PST + | Mon Jan 01 17:32:01 2001 PST | @ 1 min | Mon Jan 01 17:31:01 2001 PST + | Mon Jan 01 17:32:01 2001 PST | @ 14 secs ago | Mon Jan 01 17:32:15 2001 PST +(100 rows) + +SELECT '' AS ten, d.f1 AS datetime, datetime '1980-01-06 00:00 GMT' AS gpstime_zero, + d.f1 - datetime '1980-01-06 00:00 GMT' AS difference + FROM TEMP_DATETIME d + ORDER BY difference; + ten | datetime | gpstime_zero | difference +-----+------------------------------+------------------------------+---------------------------------- + | epoch | Sat Jan 05 16:00:00 1980 PST | @ 3657 days ago + | Wed Feb 28 17:32:01 1996 PST | Sat Jan 05 16:00:00 1980 PST | @ 5898 days 1 hour 32 mins 1 sec + | Thu Feb 29 17:32:01 1996 PST | Sat Jan 05 16:00:00 1980 PST | @ 5899 days 1 hour 32 mins 1 sec + | Fri Mar 01 17:32:01 1996 PST | Sat Jan 05 16:00:00 1980 PST | @ 5900 days 1 hour 32 mins 1 sec + | Mon Dec 30 17:32:01 1996 PST | Sat Jan 05 16:00:00 1980 PST | @ 6204 days 1 hour 32 mins 1 sec + | Tue Dec 31 17:32:01 1996 PST | Sat Jan 05 16:00:00 1980 PST | @ 6205 days 1 hour 32 mins 1 sec + | Fri Dec 31 17:32:01 1999 PST | Sat Jan 05 16:00:00 1980 PST | @ 7300 days 1 hour 32 mins 1 sec + | Sat Jan 01 17:32:01 2000 PST | Sat Jan 05 16:00:00 1980 PST | @ 7301 days 1 hour 32 mins 1 sec + | Sun Dec 31 17:32:01 2000 PST | Sat Jan 05 16:00:00 1980 PST | @ 7666 days 1 hour 32 mins 1 sec + | Mon Jan 01 17:32:01 2001 PST | Sat Jan 05 16:00:00 1980 PST | @ 7667 days 1 hour 32 mins 1 sec +(10 rows) + +SELECT '' AS hundred, d1.f1 AS datetime1, d2.f1 AS datetime2, d1.f1 - d2.f1 AS difference + FROM TEMP_DATETIME d1, TEMP_DATETIME d2 + ORDER BY datetime1, datetime2, difference; + hundred | datetime1 | datetime2 | difference +---------+------------------------------+------------------------------+--------------------------------------- + | epoch | epoch | @ 0 + | epoch | Wed Feb 28 17:32:01 1996 PST | @ 9555 days 1 hour 32 mins 1 sec ago + | epoch | Thu Feb 29 17:32:01 1996 PST | @ 9556 days 1 hour 32 mins 1 sec ago + | epoch | Fri Mar 01 17:32:01 1996 PST | @ 9557 days 1 hour 32 mins 1 sec ago + | epoch | Mon Dec 30 17:32:01 1996 PST | @ 9861 days 1 hour 32 mins 1 sec ago + | epoch | Tue Dec 31 17:32:01 1996 PST | @ 9862 days 1 hour 32 mins 1 sec ago + | epoch | Fri Dec 31 17:32:01 1999 PST | @ 10957 days 1 hour 32 mins 1 sec ago + | epoch | Sat Jan 01 17:32:01 2000 PST | @ 10958 days 1 hour 32 mins 1 sec ago + | epoch | Sun Dec 31 17:32:01 2000 PST | @ 11323 days 1 hour 32 mins 1 sec ago + | epoch | Mon Jan 01 17:32:01 2001 PST | @ 11324 days 1 hour 32 mins 1 sec ago + | Wed Feb 28 17:32:01 1996 PST | epoch | @ 9555 days 1 hour 32 mins 1 sec + | Wed Feb 28 17:32:01 1996 PST | Wed Feb 28 17:32:01 1996 PST | @ 0 + | Wed Feb 28 17:32:01 1996 PST | Thu Feb 29 17:32:01 1996 PST | @ 1 day ago + | Wed Feb 28 17:32:01 1996 PST | Fri Mar 01 17:32:01 1996 PST | @ 2 days ago + | Wed Feb 28 17:32:01 1996 PST | Mon Dec 30 17:32:01 1996 PST | @ 306 days ago + | Wed Feb 28 17:32:01 1996 PST | Tue Dec 31 17:32:01 1996 PST | @ 307 days ago + | Wed Feb 28 17:32:01 1996 PST | Fri Dec 31 17:32:01 1999 PST | @ 1402 days ago + | Wed Feb 28 17:32:01 1996 PST | Sat Jan 01 17:32:01 2000 PST | @ 1403 days ago + | Wed Feb 28 17:32:01 1996 PST | Sun Dec 31 17:32:01 2000 PST | @ 1768 days ago + | Wed Feb 28 17:32:01 1996 PST | Mon Jan 01 17:32:01 2001 PST | @ 1769 days ago + | Thu Feb 29 17:32:01 1996 PST | epoch | @ 9556 days 1 hour 32 mins 1 sec + | Thu Feb 29 17:32:01 1996 PST | Wed Feb 28 17:32:01 1996 PST | @ 1 day + | Thu Feb 29 17:32:01 1996 PST | Thu Feb 29 17:32:01 1996 PST | @ 0 + | Thu Feb 29 17:32:01 1996 PST | Fri Mar 01 17:32:01 1996 PST | @ 1 day ago + | Thu Feb 29 17:32:01 1996 PST | Mon Dec 30 17:32:01 1996 PST | @ 305 days ago + | Thu Feb 29 17:32:01 1996 PST | Tue Dec 31 17:32:01 1996 PST | @ 306 days ago + | Thu Feb 29 17:32:01 1996 PST | Fri Dec 31 17:32:01 1999 PST | @ 1401 days ago + | Thu Feb 29 17:32:01 1996 PST | Sat Jan 01 17:32:01 2000 PST | @ 1402 days ago + | Thu Feb 29 17:32:01 1996 PST | Sun Dec 31 17:32:01 2000 PST | @ 1767 days ago + | Thu Feb 29 17:32:01 1996 PST | Mon Jan 01 17:32:01 2001 PST | @ 1768 days ago + | Fri Mar 01 17:32:01 1996 PST | epoch | @ 9557 days 1 hour 32 mins 1 sec + | Fri Mar 01 17:32:01 1996 PST | Wed Feb 28 17:32:01 1996 PST | @ 2 days + | Fri Mar 01 17:32:01 1996 PST | Thu Feb 29 17:32:01 1996 PST | @ 1 day + | Fri Mar 01 17:32:01 1996 PST | Fri Mar 01 17:32:01 1996 PST | @ 0 + | Fri Mar 01 17:32:01 1996 PST | Mon Dec 30 17:32:01 1996 PST | @ 304 days ago + | Fri Mar 01 17:32:01 1996 PST | Tue Dec 31 17:32:01 1996 PST | @ 305 days ago + | Fri Mar 01 17:32:01 1996 PST | Fri Dec 31 17:32:01 1999 PST | @ 1400 days ago + | Fri Mar 01 17:32:01 1996 PST | Sat Jan 01 17:32:01 2000 PST | @ 1401 days ago + | Fri Mar 01 17:32:01 1996 PST | Sun Dec 31 17:32:01 2000 PST | @ 1766 days ago + | Fri Mar 01 17:32:01 1996 PST | Mon Jan 01 17:32:01 2001 PST | @ 1767 days ago + | Mon Dec 30 17:32:01 1996 PST | epoch | @ 9861 days 1 hour 32 mins 1 sec + | Mon Dec 30 17:32:01 1996 PST | Wed Feb 28 17:32:01 1996 PST | @ 306 days + | Mon Dec 30 17:32:01 1996 PST | Thu Feb 29 17:32:01 1996 PST | @ 305 days + | Mon Dec 30 17:32:01 1996 PST | Fri Mar 01 17:32:01 1996 PST | @ 304 days + | Mon Dec 30 17:32:01 1996 PST | Mon Dec 30 17:32:01 1996 PST | @ 0 + | Mon Dec 30 17:32:01 1996 PST | Tue Dec 31 17:32:01 1996 PST | @ 1 day ago + | Mon Dec 30 17:32:01 1996 PST | Fri Dec 31 17:32:01 1999 PST | @ 1096 days ago + | Mon Dec 30 17:32:01 1996 PST | Sat Jan 01 17:32:01 2000 PST | @ 1097 days ago + | Mon Dec 30 17:32:01 1996 PST | Sun Dec 31 17:32:01 2000 PST | @ 1462 days ago + | Mon Dec 30 17:32:01 1996 PST | Mon Jan 01 17:32:01 2001 PST | @ 1463 days ago + | Tue Dec 31 17:32:01 1996 PST | epoch | @ 9862 days 1 hour 32 mins 1 sec + | Tue Dec 31 17:32:01 1996 PST | Wed Feb 28 17:32:01 1996 PST | @ 307 days + | Tue Dec 31 17:32:01 1996 PST | Thu Feb 29 17:32:01 1996 PST | @ 306 days + | Tue Dec 31 17:32:01 1996 PST | Fri Mar 01 17:32:01 1996 PST | @ 305 days + | Tue Dec 31 17:32:01 1996 PST | Mon Dec 30 17:32:01 1996 PST | @ 1 day + | Tue Dec 31 17:32:01 1996 PST | Tue Dec 31 17:32:01 1996 PST | @ 0 + | Tue Dec 31 17:32:01 1996 PST | Fri Dec 31 17:32:01 1999 PST | @ 1095 days ago + | Tue Dec 31 17:32:01 1996 PST | Sat Jan 01 17:32:01 2000 PST | @ 1096 days ago + | Tue Dec 31 17:32:01 1996 PST | Sun Dec 31 17:32:01 2000 PST | @ 1461 days ago + | Tue Dec 31 17:32:01 1996 PST | Mon Jan 01 17:32:01 2001 PST | @ 1462 days ago + | Fri Dec 31 17:32:01 1999 PST | epoch | @ 10957 days 1 hour 32 mins 1 sec + | Fri Dec 31 17:32:01 1999 PST | Wed Feb 28 17:32:01 1996 PST | @ 1402 days + | Fri Dec 31 17:32:01 1999 PST | Thu Feb 29 17:32:01 1996 PST | @ 1401 days + | Fri Dec 31 17:32:01 1999 PST | Fri Mar 01 17:32:01 1996 PST | @ 1400 days + | Fri Dec 31 17:32:01 1999 PST | Mon Dec 30 17:32:01 1996 PST | @ 1096 days + | Fri Dec 31 17:32:01 1999 PST | Tue Dec 31 17:32:01 1996 PST | @ 1095 days + | Fri Dec 31 17:32:01 1999 PST | Fri Dec 31 17:32:01 1999 PST | @ 0 + | Fri Dec 31 17:32:01 1999 PST | Sat Jan 01 17:32:01 2000 PST | @ 1 day ago + | Fri Dec 31 17:32:01 1999 PST | Sun Dec 31 17:32:01 2000 PST | @ 366 days ago + | Fri Dec 31 17:32:01 1999 PST | Mon Jan 01 17:32:01 2001 PST | @ 367 days ago + | Sat Jan 01 17:32:01 2000 PST | epoch | @ 10958 days 1 hour 32 mins 1 sec + | Sat Jan 01 17:32:01 2000 PST | Wed Feb 28 17:32:01 1996 PST | @ 1403 days + | Sat Jan 01 17:32:01 2000 PST | Thu Feb 29 17:32:01 1996 PST | @ 1402 days + | Sat Jan 01 17:32:01 2000 PST | Fri Mar 01 17:32:01 1996 PST | @ 1401 days + | Sat Jan 01 17:32:01 2000 PST | Mon Dec 30 17:32:01 1996 PST | @ 1097 days + | Sat Jan 01 17:32:01 2000 PST | Tue Dec 31 17:32:01 1996 PST | @ 1096 days + | Sat Jan 01 17:32:01 2000 PST | Fri Dec 31 17:32:01 1999 PST | @ 1 day + | Sat Jan 01 17:32:01 2000 PST | Sat Jan 01 17:32:01 2000 PST | @ 0 + | Sat Jan 01 17:32:01 2000 PST | Sun Dec 31 17:32:01 2000 PST | @ 365 days ago + | Sat Jan 01 17:32:01 2000 PST | Mon Jan 01 17:32:01 2001 PST | @ 366 days ago + | Sun Dec 31 17:32:01 2000 PST | epoch | @ 11323 days 1 hour 32 mins 1 sec + | Sun Dec 31 17:32:01 2000 PST | Wed Feb 28 17:32:01 1996 PST | @ 1768 days + | Sun Dec 31 17:32:01 2000 PST | Thu Feb 29 17:32:01 1996 PST | @ 1767 days + | Sun Dec 31 17:32:01 2000 PST | Fri Mar 01 17:32:01 1996 PST | @ 1766 days + | Sun Dec 31 17:32:01 2000 PST | Mon Dec 30 17:32:01 1996 PST | @ 1462 days + | Sun Dec 31 17:32:01 2000 PST | Tue Dec 31 17:32:01 1996 PST | @ 1461 days + | Sun Dec 31 17:32:01 2000 PST | Fri Dec 31 17:32:01 1999 PST | @ 366 days + | Sun Dec 31 17:32:01 2000 PST | Sat Jan 01 17:32:01 2000 PST | @ 365 days + | Sun Dec 31 17:32:01 2000 PST | Sun Dec 31 17:32:01 2000 PST | @ 0 + | Sun Dec 31 17:32:01 2000 PST | Mon Jan 01 17:32:01 2001 PST | @ 1 day ago + | Mon Jan 01 17:32:01 2001 PST | epoch | @ 11324 days 1 hour 32 mins 1 sec + | Mon Jan 01 17:32:01 2001 PST | Wed Feb 28 17:32:01 1996 PST | @ 1769 days + | Mon Jan 01 17:32:01 2001 PST | Thu Feb 29 17:32:01 1996 PST | @ 1768 days + | Mon Jan 01 17:32:01 2001 PST | Fri Mar 01 17:32:01 1996 PST | @ 1767 days + | Mon Jan 01 17:32:01 2001 PST | Mon Dec 30 17:32:01 1996 PST | @ 1463 days + | Mon Jan 01 17:32:01 2001 PST | Tue Dec 31 17:32:01 1996 PST | @ 1462 days + | Mon Jan 01 17:32:01 2001 PST | Fri Dec 31 17:32:01 1999 PST | @ 367 days + | Mon Jan 01 17:32:01 2001 PST | Sat Jan 01 17:32:01 2000 PST | @ 366 days + | Mon Jan 01 17:32:01 2001 PST | Sun Dec 31 17:32:01 2000 PST | @ 1 day + | Mon Jan 01 17:32:01 2001 PST | Mon Jan 01 17:32:01 2001 PST | @ 0 +(100 rows) + +SELECT '' as fifty, d1 as datetime, + date_part('year', d1) AS year, date_part('month', d1) AS month, + date_part('day',d1) AS day, date_part('hour', d1) AS hour, + date_part('minute', d1) AS minute, date_part('second', d1) AS second + FROM DATETIME_TBL + WHERE isfinite(d1) and d1 >= '1-jan-1900 GMT' + ORDER BY datetime; + fifty | datetime | year | month | day | hour | minute | second +-------+---------------------------------+------+-------+-----+------+--------+---------- + | epoch | 1969 | 12 | 31 | 16 | 0 | 0 + | Wed Feb 28 17:32:01 1996 PST | 1996 | 2 | 28 | 17 | 32 | 1 + | Thu Feb 29 17:32:01 1996 PST | 1996 | 2 | 29 | 17 | 32 | 1 + | Fri Mar 01 17:32:01 1996 PST | 1996 | 3 | 1 | 17 | 32 | 1 + | Mon Dec 30 17:32:01 1996 PST | 1996 | 12 | 30 | 17 | 32 | 1 + | Tue Dec 31 17:32:01 1996 PST | 1996 | 12 | 31 | 17 | 32 | 1 + | Wed Jan 01 17:32:01 1997 PST | 1997 | 1 | 1 | 17 | 32 | 1 + | Thu Jan 02 00:00:00 1997 PST | 1997 | 1 | 2 | 0 | 0 | 0 + | Thu Jan 02 03:04:05 1997 PST | 1997 | 1 | 2 | 3 | 4 | 5 + | Mon Feb 10 09:32:01 1997 PST | 1997 | 2 | 10 | 9 | 32 | 1 + | Mon Feb 10 09:32:01 1997 PST | 1997 | 2 | 10 | 9 | 32 | 1 + | Mon Feb 10 09:32:01 1997 PST | 1997 | 2 | 10 | 9 | 32 | 1 + | Mon Feb 10 17:32:00 1997 PST | 1997 | 2 | 10 | 17 | 32 | 0 + | Mon Feb 10 17:32:01 1997 PST | 1997 | 2 | 10 | 17 | 32 | 1 + | Mon Feb 10 17:32:01 1997 PST | 1997 | 2 | 10 | 17 | 32 | 1 + | Mon Feb 10 17:32:01 1997 PST | 1997 | 2 | 10 | 17 | 32 | 1 + | Mon Feb 10 17:32:01 1997 PST | 1997 | 2 | 10 | 17 | 32 | 1 + | Mon Feb 10 17:32:01 1997 PST | 1997 | 2 | 10 | 17 | 32 | 1 + | Mon Feb 10 17:32:01 1997 PST | 1997 | 2 | 10 | 17 | 32 | 1 + | Mon Feb 10 17:32:01 1997 PST | 1997 | 2 | 10 | 17 | 32 | 1 + | Mon Feb 10 17:32:01 1997 PST | 1997 | 2 | 10 | 17 | 32 | 1 + | Mon Feb 10 17:32:01 1997 PST | 1997 | 2 | 10 | 17 | 32 | 1 + | Mon Feb 10 17:32:01 1997 PST | 1997 | 2 | 10 | 17 | 32 | 1 + | Mon Feb 10 17:32:01 1997 PST | 1997 | 2 | 10 | 17 | 32 | 1 + | Mon Feb 10 17:32:01 1997 PST | 1997 | 2 | 10 | 17 | 32 | 1 + | Mon Feb 10 17:32:01 1997 PST | 1997 | 2 | 10 | 17 | 32 | 1 + | Mon Feb 10 17:32:01.00 1997 PST | 1997 | 2 | 10 | 17 | 32 | 1.000001 + | Mon Feb 10 17:32:01.40 1997 PST | 1997 | 2 | 10 | 17 | 32 | 1.4 + | Mon Feb 10 17:32:01.50 1997 PST | 1997 | 2 | 10 | 17 | 32 | 1.5 + | Mon Feb 10 17:32:01.60 1997 PST | 1997 | 2 | 10 | 17 | 32 | 1.6 + | Mon Feb 10 17:32:02.00 1997 PST | 1997 | 2 | 10 | 17 | 32 | 1.999999 + | Tue Feb 11 17:32:01 1997 PST | 1997 | 2 | 11 | 17 | 32 | 1 + | Wed Feb 12 17:32:01 1997 PST | 1997 | 2 | 12 | 17 | 32 | 1 + | Thu Feb 13 17:32:01 1997 PST | 1997 | 2 | 13 | 17 | 32 | 1 + | Fri Feb 14 17:32:01 1997 PST | 1997 | 2 | 14 | 17 | 32 | 1 + | Sat Feb 15 17:32:01 1997 PST | 1997 | 2 | 15 | 17 | 32 | 1 + | Sun Feb 16 17:32:01 1997 PST | 1997 | 2 | 16 | 17 | 32 | 1 + | Sun Feb 16 17:32:01 1997 PST | 1997 | 2 | 16 | 17 | 32 | 1 + | Fri Feb 28 17:32:01 1997 PST | 1997 | 2 | 28 | 17 | 32 | 1 + | Sat Mar 01 17:32:01 1997 PST | 1997 | 3 | 1 | 17 | 32 | 1 + | Tue Jun 10 17:32:01 1997 PDT | 1997 | 6 | 10 | 17 | 32 | 1 + | Tue Jun 10 18:32:01 1997 PDT | 1997 | 6 | 10 | 18 | 32 | 1 + | Tue Dec 30 17:32:01 1997 PST | 1997 | 12 | 30 | 17 | 32 | 1 + | Wed Dec 31 17:32:01 1997 PST | 1997 | 12 | 31 | 17 | 32 | 1 + | Fri Dec 31 17:32:01 1999 PST | 1999 | 12 | 31 | 17 | 32 | 1 + | Sat Jan 01 17:32:01 2000 PST | 2000 | 1 | 1 | 17 | 32 | 1 + | Sun Dec 31 17:32:01 2000 PST | 2000 | 12 | 31 | 17 | 32 | 1 + | Mon Jan 01 17:32:01 2001 PST | 2001 | 1 | 1 | 17 | 32 | 1 + | Sat Feb 16 17:32:01 2097 | 2097 | 2 | 16 | 17 | 32 | 1 +(49 rows) + +-- +-- abstime, reltime arithmetic +-- +SELECT '' AS four, f1 AS abstime, + date_part('year', f1) AS year, date_part('month', f1) AS month, + date_part('day',f1) AS day, date_part('hour', f1) AS hour, + date_part('minute', f1) AS minute, date_part('second', f1) AS second + FROM ABSTIME_TBL + WHERE isfinite(f1) and f1 <> abstime 'current' + ORDER BY abstime; + four | abstime | year | month | day | hour | minute | second +------+------------------------------+------+-------+-----+------+--------+-------- + | Sat May 10 23:59:12 1947 PDT | 1947 | 5 | 10 | 23 | 59 | 12 + | epoch | 1969 | 12 | 31 | 16 | 0 | 0 + | Sun Jan 14 03:14:21 1973 PST | 1973 | 1 | 14 | 3 | 14 | 21 + | Mon May 01 00:30:30 1995 PDT | 1995 | 5 | 1 | 0 | 30 | 30 +(4 rows) + +-- +-- conversions +-- +SELECT '' AS ten, f1 AS datetime, date( f1) AS date + FROM TEMP_DATETIME + WHERE f1 <> datetime 'current' + ORDER BY date; + ten | datetime | date +-----+------------------------------+------------ + | epoch | 01-01-1970 + | Wed Feb 28 17:32:01 1996 PST | 02-28-1996 + | Thu Feb 29 17:32:01 1996 PST | 02-29-1996 + | Fri Mar 01 17:32:01 1996 PST | 03-01-1996 + | Mon Dec 30 17:32:01 1996 PST | 12-30-1996 + | Tue Dec 31 17:32:01 1996 PST | 12-31-1996 + | Fri Dec 31 17:32:01 1999 PST | 12-31-1999 + | Sat Jan 01 17:32:01 2000 PST | 01-01-2000 + | Sun Dec 31 17:32:01 2000 PST | 12-31-2000 + | Mon Jan 01 17:32:01 2001 PST | 01-01-2001 +(10 rows) + +SELECT '' AS ten, f1 AS datetime, abstime( f1) AS abstime + FROM TEMP_DATETIME + ORDER BY abstime; + ten | datetime | abstime +-----+------------------------------+------------------------------ + | epoch | epoch + | Wed Feb 28 17:32:01 1996 PST | Wed Feb 28 17:32:01 1996 PST + | Thu Feb 29 17:32:01 1996 PST | Thu Feb 29 17:32:01 1996 PST + | Fri Mar 01 17:32:01 1996 PST | Fri Mar 01 17:32:01 1996 PST + | Mon Dec 30 17:32:01 1996 PST | Mon Dec 30 17:32:01 1996 PST + | Tue Dec 31 17:32:01 1996 PST | Tue Dec 31 17:32:01 1996 PST + | Fri Dec 31 17:32:01 1999 PST | Fri Dec 31 17:32:01 1999 PST + | Sat Jan 01 17:32:01 2000 PST | Sat Jan 01 17:32:01 2000 PST + | Sun Dec 31 17:32:01 2000 PST | Sun Dec 31 17:32:01 2000 PST + | Mon Jan 01 17:32:01 2001 PST | Mon Jan 01 17:32:01 2001 PST +(10 rows) + +SELECT '' AS five, f1 AS abstime, date( f1) AS date + FROM ABSTIME_TBL + WHERE isfinite(f1) AND f1 <> abstime 'current' + ORDER BY date; + five | abstime | date +------+------------------------------+------------ + | Sat May 10 23:59:12 1947 PDT | 05-10-1947 + | epoch | 01-01-1970 + | Sun Jan 14 03:14:21 1973 PST | 01-14-1973 + | Mon May 01 00:30:30 1995 PDT | 05-01-1995 +(4 rows) + +SELECT '' AS five, d1 AS datetime, abstime(d1) AS abstime + FROM DATETIME_TBL WHERE NOT isfinite(d1); + five | datetime | abstime +------+-----------+----------- + | invalid | invalid + | -infinity | -infinity + | infinity | infinity + | invalid | invalid + | invalid | invalid +(5 rows) + +SELECT '' AS three, f1 as abstime, datetime(f1) AS datetime + FROM ABSTIME_TBL WHERE NOT isfinite(f1); + three | abstime | datetime +-------+-----------+----------- + | infinity | infinity + | -infinity | -infinity + | invalid | invalid +(3 rows) + +SELECT '' AS ten, f1 AS timespan, reltime( f1) AS reltime + FROM TIMESPAN_TBL; + ten | timespan | reltime +-----+-------------------------------+------------------------------- + | @ 1 min | @ 1 min + | @ 5 hours | @ 5 hours + | @ 10 days | @ 10 days + | @ 34 years | @ 34 years + | @ 3 mons | @ 3 mons + | @ 14 secs ago | @ 14 secs ago + | @ 1 day 2 hours 3 mins 4 secs | @ 1 day 2 hours 3 mins 4 secs + | @ 6 years | @ 6 years + | @ 5 mons | @ 5 mons + | @ 5 mons 12 hours | @ 5 mons 12 hours +(10 rows) + +SELECT '' AS six, f1 as reltime, timespan( f1) AS timespan + FROM RELTIME_TBL; + six | reltime | timespan +-----+---------------+--------------- + | @ 1 min | @ 1 min + | @ 5 hours | @ 5 hours + | @ 10 days | @ 10 days + | @ 34 years | @ 34 years + | @ 3 mons | @ 3 mons + | @ 14 secs ago | @ 14 secs ago +(6 rows) + +DROP TABLE TEMP_DATETIME; +-- +-- formats +-- +SET DateStyle TO 'US,Postgres'; +SHOW DateStyle; +NOTICE: DateStyle is Postgres with US (NonEuropean) conventions +SELECT '' AS sixty_two, d1 AS us_postgres FROM DATETIME_TBL; + sixty_two | us_postgres +-----------+--------------------------------- + | invalid + | -infinity + | infinity + | epoch + | Mon Feb 10 17:32:01 1997 PST + | invalid + | invalid + | Mon Feb 10 17:32:01.00 1997 PST + | Mon Feb 10 17:32:02.00 1997 PST + | Mon Feb 10 17:32:01.40 1997 PST + | Mon Feb 10 17:32:01.50 1997 PST + | Mon Feb 10 17:32:01.60 1997 PST + | Thu Jan 02 00:00:00 1997 PST + | Thu Jan 02 03:04:05 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Tue Jun 10 17:32:01 1997 PDT + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 17:32:00 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 09:32:01 1997 PST + | Mon Feb 10 09:32:01 1997 PST + | Mon Feb 10 09:32:01 1997 PST + | Tue Jun 10 18:32:01 1997 PDT + | Mon Feb 10 17:32:01 1997 PST + | Tue Feb 11 17:32:01 1997 PST + | Wed Feb 12 17:32:01 1997 PST + | Thu Feb 13 17:32:01 1997 PST + | Fri Feb 14 17:32:01 1997 PST + | Sat Feb 15 17:32:01 1997 PST + | Sun Feb 16 17:32:01 1997 PST + | Tue Feb 16 17:32 0097 BC + | Sat Feb 16 17:32:01 0097 + | Thu Feb 16 17:32:01 0597 + | Tue Feb 16 17:32:01 1097 + | Sat Feb 16 17:32:01 1697 + | Thu Feb 16 17:32:01 1797 + | Tue Feb 16 17:32:01 1897 + | Sun Feb 16 17:32:01 1997 PST + | Sat Feb 16 17:32:01 2097 + | Wed Feb 28 17:32:01 1996 PST + | Thu Feb 29 17:32:01 1996 PST + | Fri Mar 01 17:32:01 1996 PST + | Mon Dec 30 17:32:01 1996 PST + | Tue Dec 31 17:32:01 1996 PST + | Wed Jan 01 17:32:01 1997 PST + | Fri Feb 28 17:32:01 1997 PST + | Sat Mar 01 17:32:01 1997 PST + | Tue Dec 30 17:32:01 1997 PST + | Wed Dec 31 17:32:01 1997 PST + | Fri Dec 31 17:32:01 1999 PST + | Sat Jan 01 17:32:01 2000 PST + | Sun Dec 31 17:32:01 2000 PST + | Mon Jan 01 17:32:01 2001 PST +(61 rows) + +SELECT '' AS eight, f1 AS us_postgres FROM ABSTIME_TBL; + eight | us_postgres +-------+------------------------------ + | Sun Jan 14 03:14:21 1973 PST + | Mon May 01 00:30:30 1995 PDT + | epoch + | current + | infinity + | -infinity + | Sat May 10 23:59:12 1947 PDT + | invalid +(8 rows) + +SET DateStyle TO 'US,ISO'; +SELECT '' AS sixty_two, d1 AS us_iso FROM DATETIME_TBL; + sixty_two | us_iso +-----------+--------------------------- + | invalid + | -infinity + | infinity + | epoch + | 1997-02-10 17:32:01-08 + | invalid + | invalid + | 1997-02-10 17:32:01.00-08 + | 1997-02-10 17:32:02.00-08 + | 1997-02-10 17:32:01.40-08 + | 1997-02-10 17:32:01.50-08 + | 1997-02-10 17:32:01.60-08 + | 1997-01-02 00:00:00-08 + | 1997-01-02 03:04:05-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-06-10 17:32:01-07 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:00-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 09:32:01-08 + | 1997-02-10 09:32:01-08 + | 1997-02-10 09:32:01-08 + | 1997-06-10 18:32:01-07 + | 1997-02-10 17:32:01-08 + | 1997-02-11 17:32:01-08 + | 1997-02-12 17:32:01-08 + | 1997-02-13 17:32:01-08 + | 1997-02-14 17:32:01-08 + | 1997-02-15 17:32:01-08 + | 1997-02-16 17:32:01-08 + | 0097-02-16 17:32 BC + | 0097-02-16 17:32:01 + | 0597-02-16 17:32:01 + | 1097-02-16 17:32:01 + | 1697-02-16 17:32:01 + | 1797-02-16 17:32:01 + | 1897-02-16 17:32:01 + | 1997-02-16 17:32:01-08 + | 2097-02-16 17:32:01 + | 1996-02-28 17:32:01-08 + | 1996-02-29 17:32:01-08 + | 1996-03-01 17:32:01-08 + | 1996-12-30 17:32:01-08 + | 1996-12-31 17:32:01-08 + | 1997-01-01 17:32:01-08 + | 1997-02-28 17:32:01-08 + | 1997-03-01 17:32:01-08 + | 1997-12-30 17:32:01-08 + | 1997-12-31 17:32:01-08 + | 1999-12-31 17:32:01-08 + | 2000-01-01 17:32:01-08 + | 2000-12-31 17:32:01-08 + | 2001-01-01 17:32:01-08 +(61 rows) + +SELECT '' AS eight, f1 AS us_iso FROM ABSTIME_TBL; + eight | us_iso +-------+------------------------ + | 1973-01-14 03:14:21-08 + | 1995-05-01 00:30:30-07 + | epoch + | current + | infinity + | -infinity + | 1947-05-10 23:59:12-07 + | invalid +(8 rows) + +SET DateStyle TO 'US,SQL'; +SHOW DateStyle; +NOTICE: DateStyle is SQL with US (NonEuropean) conventions +SELECT '' AS sixty_two, d1 AS us_sql FROM DATETIME_TBL; + sixty_two | us_sql +-----------+---------------------------- + | invalid + | -infinity + | infinity + | epoch + | 02/10/1997 17:32:01.00 PST + | invalid + | invalid + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:02.00 PST + | 02/10/1997 17:32:01.40 PST + | 02/10/1997 17:32:01.50 PST + | 02/10/1997 17:32:01.60 PST + | 01/02/1997 00:00:00.00 PST + | 01/02/1997 03:04:05.00 PST + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:01.00 PST + | 06/10/1997 17:32:01.00 PDT + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:00.00 PST + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 09:32:01.00 PST + | 02/10/1997 09:32:01.00 PST + | 02/10/1997 09:32:01.00 PST + | 06/10/1997 18:32:01.00 PDT + | 02/10/1997 17:32:01.00 PST + | 02/11/1997 17:32:01.00 PST + | 02/12/1997 17:32:01.00 PST + | 02/13/1997 17:32:01.00 PST + | 02/14/1997 17:32:01.00 PST + | 02/15/1997 17:32:01.00 PST + | 02/16/1997 17:32:01.00 PST + | 02/16/0097 17:32 BC + | 02/16/0097 17:32:01.00 + | 02/16/0597 17:32:01.00 + | 02/16/1097 17:32:01.00 + | 02/16/1697 17:32:01.00 + | 02/16/1797 17:32:01.00 + | 02/16/1897 17:32:01.00 + | 02/16/1997 17:32:01.00 PST + | 02/16/2097 17:32:01.00 + | 02/28/1996 17:32:01.00 PST + | 02/29/1996 17:32:01.00 PST + | 03/01/1996 17:32:01.00 PST + | 12/30/1996 17:32:01.00 PST + | 12/31/1996 17:32:01.00 PST + | 01/01/1997 17:32:01.00 PST + | 02/28/1997 17:32:01.00 PST + | 03/01/1997 17:32:01.00 PST + | 12/30/1997 17:32:01.00 PST + | 12/31/1997 17:32:01.00 PST + | 12/31/1999 17:32:01.00 PST + | 01/01/2000 17:32:01.00 PST + | 12/31/2000 17:32:01.00 PST + | 01/01/2001 17:32:01.00 PST +(61 rows) + +SELECT '' AS eight, f1 AS us_sql FROM ABSTIME_TBL; + eight | us_sql +-------+---------------------------- + | 01/14/1973 03:14:21.00 PST + | 05/01/1995 00:30:30.00 PDT + | epoch + | current + | infinity + | -infinity + | 05/10/1947 23:59:12.00 PDT + | invalid +(8 rows) + +SET DateStyle TO 'European,Postgres'; +SHOW DateStyle; +NOTICE: DateStyle is Postgres with European conventions +INSERT INTO DATETIME_TBL VALUES('13/06/1957'); +SELECT count(*) as one FROM DATETIME_TBL WHERE d1 = 'Jun 13 1957'; + one +----- + 1 +(1 row) + +SELECT '' AS sixty_three, d1 AS european_postgres FROM DATETIME_TBL; + sixty_three | european_postgres +-------------+--------------------------------- + | invalid + | -infinity + | infinity + | epoch + | Mon 10 Feb 17:32:01 1997 PST + | invalid + | invalid + | Mon 10 Feb 17:32:01.00 1997 PST + | Mon 10 Feb 17:32:02.00 1997 PST + | Mon 10 Feb 17:32:01.40 1997 PST + | Mon 10 Feb 17:32:01.50 1997 PST + | Mon 10 Feb 17:32:01.60 1997 PST + | Thu 02 Jan 00:00:00 1997 PST + | Thu 02 Jan 03:04:05 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Tue 10 Jun 17:32:01 1997 PDT + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 17:32:00 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 09:32:01 1997 PST + | Mon 10 Feb 09:32:01 1997 PST + | Mon 10 Feb 09:32:01 1997 PST + | Tue 10 Jun 18:32:01 1997 PDT + | Mon 10 Feb 17:32:01 1997 PST + | Tue 11 Feb 17:32:01 1997 PST + | Wed 12 Feb 17:32:01 1997 PST + | Thu 13 Feb 17:32:01 1997 PST + | Fri 14 Feb 17:32:01 1997 PST + | Sat 15 Feb 17:32:01 1997 PST + | Sun 16 Feb 17:32:01 1997 PST + | Tue 16 Feb 17:32 0097 BC + | Sat 16 Feb 17:32:01 0097 + | Thu 16 Feb 17:32:01 0597 + | Tue 16 Feb 17:32:01 1097 + | Sat 16 Feb 17:32:01 1697 + | Thu 16 Feb 17:32:01 1797 + | Tue 16 Feb 17:32:01 1897 + | Sun 16 Feb 17:32:01 1997 PST + | Sat 16 Feb 17:32:01 2097 + | Wed 28 Feb 17:32:01 1996 PST + | Thu 29 Feb 17:32:01 1996 PST + | Fri 01 Mar 17:32:01 1996 PST + | Mon 30 Dec 17:32:01 1996 PST + | Tue 31 Dec 17:32:01 1996 PST + | Wed 01 Jan 17:32:01 1997 PST + | Fri 28 Feb 17:32:01 1997 PST + | Sat 01 Mar 17:32:01 1997 PST + | Tue 30 Dec 17:32:01 1997 PST + | Wed 31 Dec 17:32:01 1997 PST + | Fri 31 Dec 17:32:01 1999 PST + | Sat 01 Jan 17:32:01 2000 PST + | Sun 31 Dec 17:32:01 2000 PST + | Mon 01 Jan 17:32:01 2001 PST + | Thu 13 Jun 00:00:00 1957 PDT +(62 rows) + +SELECT '' AS eight, f1 AS european_postgres FROM ABSTIME_TBL; + eight | european_postgres +-------+------------------------------ + | Sun 14 Jan 03:14:21 1973 PST + | Mon 01 May 00:30:30 1995 PDT + | epoch + | current + | infinity + | -infinity + | Sat 10 May 23:59:12 1947 PDT + | invalid +(8 rows) + +SET DateStyle TO 'European,ISO'; +SHOW DateStyle; +NOTICE: DateStyle is ISO with European conventions +SELECT '' AS sixty_three, d1 AS european_iso FROM DATETIME_TBL; + sixty_three | european_iso +-------------+--------------------------- + | invalid + | -infinity + | infinity + | epoch + | 1997-02-10 17:32:01-08 + | invalid + | invalid + | 1997-02-10 17:32:01.00-08 + | 1997-02-10 17:32:02.00-08 + | 1997-02-10 17:32:01.40-08 + | 1997-02-10 17:32:01.50-08 + | 1997-02-10 17:32:01.60-08 + | 1997-01-02 00:00:00-08 + | 1997-01-02 03:04:05-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-06-10 17:32:01-07 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:00-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 09:32:01-08 + | 1997-02-10 09:32:01-08 + | 1997-02-10 09:32:01-08 + | 1997-06-10 18:32:01-07 + | 1997-02-10 17:32:01-08 + | 1997-02-11 17:32:01-08 + | 1997-02-12 17:32:01-08 + | 1997-02-13 17:32:01-08 + | 1997-02-14 17:32:01-08 + | 1997-02-15 17:32:01-08 + | 1997-02-16 17:32:01-08 + | 0097-02-16 17:32 BC + | 0097-02-16 17:32:01 + | 0597-02-16 17:32:01 + | 1097-02-16 17:32:01 + | 1697-02-16 17:32:01 + | 1797-02-16 17:32:01 + | 1897-02-16 17:32:01 + | 1997-02-16 17:32:01-08 + | 2097-02-16 17:32:01 + | 1996-02-28 17:32:01-08 + | 1996-02-29 17:32:01-08 + | 1996-03-01 17:32:01-08 + | 1996-12-30 17:32:01-08 + | 1996-12-31 17:32:01-08 + | 1997-01-01 17:32:01-08 + | 1997-02-28 17:32:01-08 + | 1997-03-01 17:32:01-08 + | 1997-12-30 17:32:01-08 + | 1997-12-31 17:32:01-08 + | 1999-12-31 17:32:01-08 + | 2000-01-01 17:32:01-08 + | 2000-12-31 17:32:01-08 + | 2001-01-01 17:32:01-08 + | 1957-06-13 00:00:00-07 +(62 rows) + +SELECT '' AS eight, f1 AS european_iso FROM ABSTIME_TBL; + eight | european_iso +-------+------------------------ + | 1973-01-14 03:14:21-08 + | 1995-05-01 00:30:30-07 + | epoch + | current + | infinity + | -infinity + | 1947-05-10 23:59:12-07 + | invalid +(8 rows) + +SET DateStyle TO 'European,SQL'; +SHOW DateStyle; +NOTICE: DateStyle is SQL with European conventions +SELECT '' AS sixty_three, d1 AS european_sql FROM DATETIME_TBL; + sixty_three | european_sql +-------------+---------------------------- + | invalid + | -infinity + | infinity + | epoch + | 10/02/1997 17:32:01.00 PST + | invalid + | invalid + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:02.00 PST + | 10/02/1997 17:32:01.40 PST + | 10/02/1997 17:32:01.50 PST + | 10/02/1997 17:32:01.60 PST + | 02/01/1997 00:00:00.00 PST + | 02/01/1997 03:04:05.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/06/1997 17:32:01.00 PDT + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:00.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 09:32:01.00 PST + | 10/02/1997 09:32:01.00 PST + | 10/02/1997 09:32:01.00 PST + | 10/06/1997 18:32:01.00 PDT + | 10/02/1997 17:32:01.00 PST + | 11/02/1997 17:32:01.00 PST + | 12/02/1997 17:32:01.00 PST + | 13/02/1997 17:32:01.00 PST + | 14/02/1997 17:32:01.00 PST + | 15/02/1997 17:32:01.00 PST + | 16/02/1997 17:32:01.00 PST + | 16/02/0097 17:32 BC + | 16/02/0097 17:32:01.00 + | 16/02/0597 17:32:01.00 + | 16/02/1097 17:32:01.00 + | 16/02/1697 17:32:01.00 + | 16/02/1797 17:32:01.00 + | 16/02/1897 17:32:01.00 + | 16/02/1997 17:32:01.00 PST + | 16/02/2097 17:32:01.00 + | 28/02/1996 17:32:01.00 PST + | 29/02/1996 17:32:01.00 PST + | 01/03/1996 17:32:01.00 PST + | 30/12/1996 17:32:01.00 PST + | 31/12/1996 17:32:01.00 PST + | 01/01/1997 17:32:01.00 PST + | 28/02/1997 17:32:01.00 PST + | 01/03/1997 17:32:01.00 PST + | 30/12/1997 17:32:01.00 PST + | 31/12/1997 17:32:01.00 PST + | 31/12/1999 17:32:01.00 PST + | 01/01/2000 17:32:01.00 PST + | 31/12/2000 17:32:01.00 PST + | 01/01/2001 17:32:01.00 PST + | 13/06/1957 00:00:00.00 PDT +(62 rows) + +SELECT '' AS eight, f1 AS european_sql FROM ABSTIME_TBL; + eight | european_sql +-------+---------------------------- + | 14/01/1973 03:14:21.00 PST + | 01/05/1995 00:30:30.00 PDT + | epoch + | current + | infinity + | -infinity + | 10/05/1947 23:59:12.00 PDT + | invalid +(8 rows) + +RESET DateStyle; +SHOW DateStyle; +NOTICE: DateStyle is Postgres with US (NonEuropean) conventions +-- +-- formats +-- +SET DateStyle TO 'US,Postgres'; +SHOW DateStyle; +NOTICE: DateStyle is Postgres with US (NonEuropean) conventions +SELECT '' AS sixty_two, d1 AS us_postgres FROM DATETIME_TBL; + sixty_two | us_postgres +-----------+--------------------------------- + | invalid + | -infinity + | infinity + | epoch + | Mon Feb 10 17:32:01 1997 PST + | invalid + | invalid + | Mon Feb 10 17:32:01.00 1997 PST + | Mon Feb 10 17:32:02.00 1997 PST + | Mon Feb 10 17:32:01.40 1997 PST + | Mon Feb 10 17:32:01.50 1997 PST + | Mon Feb 10 17:32:01.60 1997 PST + | Thu Jan 02 00:00:00 1997 PST + | Thu Jan 02 03:04:05 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Tue Jun 10 17:32:01 1997 PDT + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 17:32:00 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 17:32:01 1997 PST + | Mon Feb 10 09:32:01 1997 PST + | Mon Feb 10 09:32:01 1997 PST + | Mon Feb 10 09:32:01 1997 PST + | Tue Jun 10 18:32:01 1997 PDT + | Mon Feb 10 17:32:01 1997 PST + | Tue Feb 11 17:32:01 1997 PST + | Wed Feb 12 17:32:01 1997 PST + | Thu Feb 13 17:32:01 1997 PST + | Fri Feb 14 17:32:01 1997 PST + | Sat Feb 15 17:32:01 1997 PST + | Sun Feb 16 17:32:01 1997 PST + | Tue Feb 16 17:32 0097 BC + | Sat Feb 16 17:32:01 0097 + | Thu Feb 16 17:32:01 0597 + | Tue Feb 16 17:32:01 1097 + | Sat Feb 16 17:32:01 1697 + | Thu Feb 16 17:32:01 1797 + | Tue Feb 16 17:32:01 1897 + | Sun Feb 16 17:32:01 1997 PST + | Sat Feb 16 17:32:01 2097 + | Wed Feb 28 17:32:01 1996 PST + | Thu Feb 29 17:32:01 1996 PST + | Fri Mar 01 17:32:01 1996 PST + | Mon Dec 30 17:32:01 1996 PST + | Tue Dec 31 17:32:01 1996 PST + | Wed Jan 01 17:32:01 1997 PST + | Fri Feb 28 17:32:01 1997 PST + | Sat Mar 01 17:32:01 1997 PST + | Tue Dec 30 17:32:01 1997 PST + | Wed Dec 31 17:32:01 1997 PST + | Fri Dec 31 17:32:01 1999 PST + | Sat Jan 01 17:32:01 2000 PST + | Sun Dec 31 17:32:01 2000 PST + | Mon Jan 01 17:32:01 2001 PST + | Thu Jun 13 00:00:00 1957 PDT +(62 rows) + +SELECT '' AS eight, f1 AS us_postgres FROM ABSTIME_TBL; + eight | us_postgres +-------+------------------------------ + | Sun Jan 14 03:14:21 1973 PST + | Mon May 01 00:30:30 1995 PDT + | epoch + | current + | infinity + | -infinity + | Sat May 10 23:59:12 1947 PDT + | invalid +(8 rows) + +SET DateStyle TO 'US,ISO'; +SELECT '' AS sixty_two, d1 AS us_iso FROM DATETIME_TBL; + sixty_two | us_iso +-----------+--------------------------- + | invalid + | -infinity + | infinity + | epoch + | 1997-02-10 17:32:01-08 + | invalid + | invalid + | 1997-02-10 17:32:01.00-08 + | 1997-02-10 17:32:02.00-08 + | 1997-02-10 17:32:01.40-08 + | 1997-02-10 17:32:01.50-08 + | 1997-02-10 17:32:01.60-08 + | 1997-01-02 00:00:00-08 + | 1997-01-02 03:04:05-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-06-10 17:32:01-07 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:00-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 09:32:01-08 + | 1997-02-10 09:32:01-08 + | 1997-02-10 09:32:01-08 + | 1997-06-10 18:32:01-07 + | 1997-02-10 17:32:01-08 + | 1997-02-11 17:32:01-08 + | 1997-02-12 17:32:01-08 + | 1997-02-13 17:32:01-08 + | 1997-02-14 17:32:01-08 + | 1997-02-15 17:32:01-08 + | 1997-02-16 17:32:01-08 + | 0097-02-16 17:32 BC + | 0097-02-16 17:32:01 + | 0597-02-16 17:32:01 + | 1097-02-16 17:32:01 + | 1697-02-16 17:32:01 + | 1797-02-16 17:32:01 + | 1897-02-16 17:32:01 + | 1997-02-16 17:32:01-08 + | 2097-02-16 17:32:01 + | 1996-02-28 17:32:01-08 + | 1996-02-29 17:32:01-08 + | 1996-03-01 17:32:01-08 + | 1996-12-30 17:32:01-08 + | 1996-12-31 17:32:01-08 + | 1997-01-01 17:32:01-08 + | 1997-02-28 17:32:01-08 + | 1997-03-01 17:32:01-08 + | 1997-12-30 17:32:01-08 + | 1997-12-31 17:32:01-08 + | 1999-12-31 17:32:01-08 + | 2000-01-01 17:32:01-08 + | 2000-12-31 17:32:01-08 + | 2001-01-01 17:32:01-08 + | 1957-06-13 00:00:00-07 +(62 rows) + +SELECT '' AS eight, f1 AS us_iso FROM ABSTIME_TBL; + eight | us_iso +-------+------------------------ + | 1973-01-14 03:14:21-08 + | 1995-05-01 00:30:30-07 + | epoch + | current + | infinity + | -infinity + | 1947-05-10 23:59:12-07 + | invalid +(8 rows) + +SET DateStyle TO 'US,SQL'; +SHOW DateStyle; +NOTICE: DateStyle is SQL with US (NonEuropean) conventions +SELECT '' AS sixty_two, d1 AS us_sql FROM DATETIME_TBL; + sixty_two | us_sql +-----------+---------------------------- + | invalid + | -infinity + | infinity + | epoch + | 02/10/1997 17:32:01.00 PST + | invalid + | invalid + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:02.00 PST + | 02/10/1997 17:32:01.40 PST + | 02/10/1997 17:32:01.50 PST + | 02/10/1997 17:32:01.60 PST + | 01/02/1997 00:00:00.00 PST + | 01/02/1997 03:04:05.00 PST + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:01.00 PST + | 06/10/1997 17:32:01.00 PDT + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:00.00 PST + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 17:32:01.00 PST + | 02/10/1997 09:32:01.00 PST + | 02/10/1997 09:32:01.00 PST + | 02/10/1997 09:32:01.00 PST + | 06/10/1997 18:32:01.00 PDT + | 02/10/1997 17:32:01.00 PST + | 02/11/1997 17:32:01.00 PST + | 02/12/1997 17:32:01.00 PST + | 02/13/1997 17:32:01.00 PST + | 02/14/1997 17:32:01.00 PST + | 02/15/1997 17:32:01.00 PST + | 02/16/1997 17:32:01.00 PST + | 02/16/0097 17:32 BC + | 02/16/0097 17:32:01.00 + | 02/16/0597 17:32:01.00 + | 02/16/1097 17:32:01.00 + | 02/16/1697 17:32:01.00 + | 02/16/1797 17:32:01.00 + | 02/16/1897 17:32:01.00 + | 02/16/1997 17:32:01.00 PST + | 02/16/2097 17:32:01.00 + | 02/28/1996 17:32:01.00 PST + | 02/29/1996 17:32:01.00 PST + | 03/01/1996 17:32:01.00 PST + | 12/30/1996 17:32:01.00 PST + | 12/31/1996 17:32:01.00 PST + | 01/01/1997 17:32:01.00 PST + | 02/28/1997 17:32:01.00 PST + | 03/01/1997 17:32:01.00 PST + | 12/30/1997 17:32:01.00 PST + | 12/31/1997 17:32:01.00 PST + | 12/31/1999 17:32:01.00 PST + | 01/01/2000 17:32:01.00 PST + | 12/31/2000 17:32:01.00 PST + | 01/01/2001 17:32:01.00 PST + | 06/13/1957 00:00:00.00 PDT +(62 rows) + +SELECT '' AS eight, f1 AS us_sql FROM ABSTIME_TBL; + eight | us_sql +-------+---------------------------- + | 01/14/1973 03:14:21.00 PST + | 05/01/1995 00:30:30.00 PDT + | epoch + | current + | infinity + | -infinity + | 05/10/1947 23:59:12.00 PDT + | invalid +(8 rows) + +SET DateStyle TO 'European,Postgres'; +SHOW DateStyle; +NOTICE: DateStyle is Postgres with European conventions +INSERT INTO DATETIME_TBL VALUES('13/06/1957'); +SELECT count(*) as one FROM DATETIME_TBL WHERE d1 = 'Jun 13 1957'; + one +----- + 2 +(1 row) + +SELECT '' AS sixty_three, d1 AS european_postgres FROM DATETIME_TBL; + sixty_three | european_postgres +-------------+--------------------------------- + | invalid + | -infinity + | infinity + | epoch + | Mon 10 Feb 17:32:01 1997 PST + | invalid + | invalid + | Mon 10 Feb 17:32:01.00 1997 PST + | Mon 10 Feb 17:32:02.00 1997 PST + | Mon 10 Feb 17:32:01.40 1997 PST + | Mon 10 Feb 17:32:01.50 1997 PST + | Mon 10 Feb 17:32:01.60 1997 PST + | Thu 02 Jan 00:00:00 1997 PST + | Thu 02 Jan 03:04:05 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Tue 10 Jun 17:32:01 1997 PDT + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 17:32:00 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 17:32:01 1997 PST + | Mon 10 Feb 09:32:01 1997 PST + | Mon 10 Feb 09:32:01 1997 PST + | Mon 10 Feb 09:32:01 1997 PST + | Tue 10 Jun 18:32:01 1997 PDT + | Mon 10 Feb 17:32:01 1997 PST + | Tue 11 Feb 17:32:01 1997 PST + | Wed 12 Feb 17:32:01 1997 PST + | Thu 13 Feb 17:32:01 1997 PST + | Fri 14 Feb 17:32:01 1997 PST + | Sat 15 Feb 17:32:01 1997 PST + | Sun 16 Feb 17:32:01 1997 PST + | Tue 16 Feb 17:32 0097 BC + | Sat 16 Feb 17:32:01 0097 + | Thu 16 Feb 17:32:01 0597 + | Tue 16 Feb 17:32:01 1097 + | Sat 16 Feb 17:32:01 1697 + | Thu 16 Feb 17:32:01 1797 + | Tue 16 Feb 17:32:01 1897 + | Sun 16 Feb 17:32:01 1997 PST + | Sat 16 Feb 17:32:01 2097 + | Wed 28 Feb 17:32:01 1996 PST + | Thu 29 Feb 17:32:01 1996 PST + | Fri 01 Mar 17:32:01 1996 PST + | Mon 30 Dec 17:32:01 1996 PST + | Tue 31 Dec 17:32:01 1996 PST + | Wed 01 Jan 17:32:01 1997 PST + | Fri 28 Feb 17:32:01 1997 PST + | Sat 01 Mar 17:32:01 1997 PST + | Tue 30 Dec 17:32:01 1997 PST + | Wed 31 Dec 17:32:01 1997 PST + | Fri 31 Dec 17:32:01 1999 PST + | Sat 01 Jan 17:32:01 2000 PST + | Sun 31 Dec 17:32:01 2000 PST + | Mon 01 Jan 17:32:01 2001 PST + | Thu 13 Jun 00:00:00 1957 PDT + | Thu 13 Jun 00:00:00 1957 PDT +(63 rows) + +SELECT '' AS eight, f1 AS european_postgres FROM ABSTIME_TBL; + eight | european_postgres +-------+------------------------------ + | Sun 14 Jan 03:14:21 1973 PST + | Mon 01 May 00:30:30 1995 PDT + | epoch + | current + | infinity + | -infinity + | Sat 10 May 23:59:12 1947 PDT + | invalid +(8 rows) + +SET DateStyle TO 'European,ISO'; +SHOW DateStyle; +NOTICE: DateStyle is ISO with European conventions +SELECT '' AS sixty_three, d1 AS european_iso FROM DATETIME_TBL; + sixty_three | european_iso +-------------+--------------------------- + | invalid + | -infinity + | infinity + | epoch + | 1997-02-10 17:32:01-08 + | invalid + | invalid + | 1997-02-10 17:32:01.00-08 + | 1997-02-10 17:32:02.00-08 + | 1997-02-10 17:32:01.40-08 + | 1997-02-10 17:32:01.50-08 + | 1997-02-10 17:32:01.60-08 + | 1997-01-02 00:00:00-08 + | 1997-01-02 03:04:05-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-06-10 17:32:01-07 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:00-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 17:32:01-08 + | 1997-02-10 09:32:01-08 + | 1997-02-10 09:32:01-08 + | 1997-02-10 09:32:01-08 + | 1997-06-10 18:32:01-07 + | 1997-02-10 17:32:01-08 + | 1997-02-11 17:32:01-08 + | 1997-02-12 17:32:01-08 + | 1997-02-13 17:32:01-08 + | 1997-02-14 17:32:01-08 + | 1997-02-15 17:32:01-08 + | 1997-02-16 17:32:01-08 + | 0097-02-16 17:32 BC + | 0097-02-16 17:32:01 + | 0597-02-16 17:32:01 + | 1097-02-16 17:32:01 + | 1697-02-16 17:32:01 + | 1797-02-16 17:32:01 + | 1897-02-16 17:32:01 + | 1997-02-16 17:32:01-08 + | 2097-02-16 17:32:01 + | 1996-02-28 17:32:01-08 + | 1996-02-29 17:32:01-08 + | 1996-03-01 17:32:01-08 + | 1996-12-30 17:32:01-08 + | 1996-12-31 17:32:01-08 + | 1997-01-01 17:32:01-08 + | 1997-02-28 17:32:01-08 + | 1997-03-01 17:32:01-08 + | 1997-12-30 17:32:01-08 + | 1997-12-31 17:32:01-08 + | 1999-12-31 17:32:01-08 + | 2000-01-01 17:32:01-08 + | 2000-12-31 17:32:01-08 + | 2001-01-01 17:32:01-08 + | 1957-06-13 00:00:00-07 + | 1957-06-13 00:00:00-07 +(63 rows) + +SELECT '' AS eight, f1 AS european_iso FROM ABSTIME_TBL; + eight | european_iso +-------+------------------------ + | 1973-01-14 03:14:21-08 + | 1995-05-01 00:30:30-07 + | epoch + | current + | infinity + | -infinity + | 1947-05-10 23:59:12-07 + | invalid +(8 rows) + +SET DateStyle TO 'European,SQL'; +SHOW DateStyle; +NOTICE: DateStyle is SQL with European conventions +SELECT '' AS sixty_three, d1 AS european_sql FROM DATETIME_TBL; + sixty_three | european_sql +-------------+---------------------------- + | invalid + | -infinity + | infinity + | epoch + | 10/02/1997 17:32:01.00 PST + | invalid + | invalid + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:02.00 PST + | 10/02/1997 17:32:01.40 PST + | 10/02/1997 17:32:01.50 PST + | 10/02/1997 17:32:01.60 PST + | 02/01/1997 00:00:00.00 PST + | 02/01/1997 03:04:05.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/06/1997 17:32:01.00 PDT + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:00.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 17:32:01.00 PST + | 10/02/1997 09:32:01.00 PST + | 10/02/1997 09:32:01.00 PST + | 10/02/1997 09:32:01.00 PST + | 10/06/1997 18:32:01.00 PDT + | 10/02/1997 17:32:01.00 PST + | 11/02/1997 17:32:01.00 PST + | 12/02/1997 17:32:01.00 PST + | 13/02/1997 17:32:01.00 PST + | 14/02/1997 17:32:01.00 PST + | 15/02/1997 17:32:01.00 PST + | 16/02/1997 17:32:01.00 PST + | 16/02/0097 17:32 BC + | 16/02/0097 17:32:01.00 + | 16/02/0597 17:32:01.00 + | 16/02/1097 17:32:01.00 + | 16/02/1697 17:32:01.00 + | 16/02/1797 17:32:01.00 + | 16/02/1897 17:32:01.00 + | 16/02/1997 17:32:01.00 PST + | 16/02/2097 17:32:01.00 + | 28/02/1996 17:32:01.00 PST + | 29/02/1996 17:32:01.00 PST + | 01/03/1996 17:32:01.00 PST + | 30/12/1996 17:32:01.00 PST + | 31/12/1996 17:32:01.00 PST + | 01/01/1997 17:32:01.00 PST + | 28/02/1997 17:32:01.00 PST + | 01/03/1997 17:32:01.00 PST + | 30/12/1997 17:32:01.00 PST + | 31/12/1997 17:32:01.00 PST + | 31/12/1999 17:32:01.00 PST + | 01/01/2000 17:32:01.00 PST + | 31/12/2000 17:32:01.00 PST + | 01/01/2001 17:32:01.00 PST + | 13/06/1957 00:00:00.00 PDT + | 13/06/1957 00:00:00.00 PDT +(63 rows) + +SELECT '' AS eight, f1 AS european_sql FROM ABSTIME_TBL; + eight | european_sql +-------+---------------------------- + | 14/01/1973 03:14:21.00 PST + | 01/05/1995 00:30:30.00 PDT + | epoch + | current + | infinity + | -infinity + | 10/05/1947 23:59:12.00 PDT + | invalid +(8 rows) + +RESET DateStyle; +SHOW DateStyle; +NOTICE: DateStyle is Postgres with US (NonEuropean) conventions diff --git a/src/test/regress/expected/tinterval-solaris-1947.out b/src/test/regress/expected/tinterval-solaris-1947.out new file mode 100644 index 0000000000..98e5e9ae66 --- /dev/null +++ b/src/test/regress/expected/tinterval-solaris-1947.out @@ -0,0 +1,168 @@ +-- +-- TINTERVAL +-- +CREATE TABLE TINTERVAL_TBL (f1 tinterval); +INSERT INTO TINTERVAL_TBL (f1) + VALUES ('["-infinity" "infinity"]'); +INSERT INTO TINTERVAL_TBL (f1) + VALUES ('["May 10, 1947 23:59:12" "Jan 14, 1973 03:14:21"]'); +INSERT INTO TINTERVAL_TBL (f1) + VALUES ('["Sep 4, 1983 23:59:12" "Oct 4, 1983 23:59:12"]'); +INSERT INTO TINTERVAL_TBL (f1) + VALUES ('["epoch" "Mon May 1 00:30:30 1995"]'); +INSERT INTO TINTERVAL_TBL (f1) + VALUES ('["Feb 15 1990 12:15:03" "current"]'); +-- badly formatted tintervals +INSERT INTO TINTERVAL_TBL (f1) + VALUES ('["bad time specifications" ""]'); +ERROR: Bad abstime external representation 'bad time specifications' +INSERT INTO TINTERVAL_TBL (f1) + VALUES ('["" "infinity"]'); +ERROR: Bad abstime external representation '' +-- test tinterval operators +SELECT '' AS five, TINTERVAL_TBL.*; + five | f1 +------+----------------------------------------------------------------- + | ["-infinity" "infinity"] + | ["Sat May 10 23:59:12 1947 PDT" "Sun Jan 14 03:14:21 1973 PST"] + | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"] + | ["epoch" "Mon May 01 00:30:30 1995 PDT"] + | ["Thu Feb 15 12:15:03 1990 PST" "current"] +(5 rows) + +-- length == +SELECT '' AS one, t.* + FROM TINTERVAL_TBL t + WHERE t.f1 #= '@ 1 months'; + one | f1 +-----+----------------------------------------------------------------- + | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"] +(1 row) + +-- length <> +SELECT '' AS three, t.* + FROM TINTERVAL_TBL t + WHERE t.f1 #<> '@ 1 months'; + three | f1 +-------+----------------------------------------------------------------- + | ["Sat May 10 23:59:12 1947 PDT" "Sun Jan 14 03:14:21 1973 PST"] + | ["epoch" "Mon May 01 00:30:30 1995 PDT"] + | ["Thu Feb 15 12:15:03 1990 PST" "current"] +(3 rows) + +-- length < +SELECT '' AS zero, t.* + FROM TINTERVAL_TBL t + WHERE t.f1 #< '@ 1 month'; + zero | f1 +------+---- +(0 rows) + +-- length <= +SELECT '' AS one, t.* + FROM TINTERVAL_TBL t + WHERE t.f1 #<= '@ 1 month'; + one | f1 +-----+----------------------------------------------------------------- + | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"] +(1 row) + +-- length > +SELECT '' AS three, t.* + FROM TINTERVAL_TBL t + WHERE t.f1 #> '@ 1 year'; + three | f1 +-------+----------------------------------------------------------------- + | ["Sat May 10 23:59:12 1947 PDT" "Sun Jan 14 03:14:21 1973 PST"] + | ["epoch" "Mon May 01 00:30:30 1995 PDT"] + | ["Thu Feb 15 12:15:03 1990 PST" "current"] +(3 rows) + +-- length >= +SELECT '' AS three, t.* + FROM TINTERVAL_TBL t + WHERE t.f1 #>= '@ 3 years'; + three | f1 +-------+----------------------------------------------------------------- + | ["Sat May 10 23:59:12 1947 PDT" "Sun Jan 14 03:14:21 1973 PST"] + | ["epoch" "Mon May 01 00:30:30 1995 PDT"] + | ["Thu Feb 15 12:15:03 1990 PST" "current"] +(3 rows) + +-- overlaps +SELECT '' AS three, t1.* + FROM TINTERVAL_TBL t1 + WHERE t1.f1 && + tinterval '["Aug 15 14:23:19 1983" "Sep 16 14:23:19 1983"]'; + three | f1 +-------+----------------------------------------------------------------- + | ["-infinity" "infinity"] + | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"] + | ["epoch" "Mon May 01 00:30:30 1995 PDT"] +(3 rows) + +SET geqo TO 'off'; +SELECT '' AS five, t1.f1, t2.f1 + FROM TINTERVAL_TBL t1, TINTERVAL_TBL t2 + WHERE t1.f1 && t2.f1 and + t1.f1 = t2.f1 + ORDER BY t1.f1, t2.f1; + five | f1 | f1 +------+-----------------------------------------------------------------+----------------------------------------------------------------- + | ["-infinity" "infinity"] | ["-infinity" "infinity"] + | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"] | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"] + | ["Thu Feb 15 12:15:03 1990 PST" "current"] | ["Thu Feb 15 12:15:03 1990 PST" "current"] + | ["epoch" "Mon May 01 00:30:30 1995 PDT"] | ["epoch" "Mon May 01 00:30:30 1995 PDT"] + | ["Sat May 10 23:59:12 1947 PDT" "Sun Jan 14 03:14:21 1973 PST"] | ["Sat May 10 23:59:12 1947 PDT" "Sun Jan 14 03:14:21 1973 PST"] +(5 rows) + +SELECT '' AS fourteen, t1.f1 AS interval1, t2.f1 AS interval2 + FROM TINTERVAL_TBL t1, TINTERVAL_TBL t2 + WHERE t1.f1 && t2.f1 and not t1.f1 = t2.f1 + ORDER BY interval1, interval2; + fourteen | interval1 | interval2 +----------+-----------------------------------------------------------------+----------------------------------------------------------------- + | ["-infinity" "infinity"] | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"] + | ["-infinity" "infinity"] | ["Thu Feb 15 12:15:03 1990 PST" "current"] + | ["-infinity" "infinity"] | ["epoch" "Mon May 01 00:30:30 1995 PDT"] + | ["-infinity" "infinity"] | ["Sat May 10 23:59:12 1947 PDT" "Sun Jan 14 03:14:21 1973 PST"] + | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"] | ["-infinity" "infinity"] + | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"] | ["epoch" "Mon May 01 00:30:30 1995 PDT"] + | ["Thu Feb 15 12:15:03 1990 PST" "current"] | ["-infinity" "infinity"] + | ["Thu Feb 15 12:15:03 1990 PST" "current"] | ["epoch" "Mon May 01 00:30:30 1995 PDT"] + | ["epoch" "Mon May 01 00:30:30 1995 PDT"] | ["-infinity" "infinity"] + | ["epoch" "Mon May 01 00:30:30 1995 PDT"] | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"] + | ["epoch" "Mon May 01 00:30:30 1995 PDT"] | ["Thu Feb 15 12:15:03 1990 PST" "current"] + | ["epoch" "Mon May 01 00:30:30 1995 PDT"] | ["Sat May 10 23:59:12 1947 PDT" "Sun Jan 14 03:14:21 1973 PST"] + | ["Sat May 10 23:59:12 1947 PDT" "Sun Jan 14 03:14:21 1973 PST"] | ["-infinity" "infinity"] + | ["Sat May 10 23:59:12 1947 PDT" "Sun Jan 14 03:14:21 1973 PST"] | ["epoch" "Mon May 01 00:30:30 1995 PDT"] +(14 rows) + +-- contains +SELECT '' AS five, t1.f1 + FROM TINTERVAL_TBL t1 + WHERE not t1.f1 << + tinterval '["Aug 15 14:23:19 1980" "Sep 16 14:23:19 1990"]' + ORDER BY t1.f1; + five | f1 +------+----------------------------------------------------------------- + | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"] + | ["Thu Feb 15 12:15:03 1990 PST" "current"] + | ["Sat May 10 23:59:12 1947 PDT" "Sun Jan 14 03:14:21 1973 PST"] +(3 rows) + +-- make time interval +SELECT '' AS three, t1.f1 + FROM TINTERVAL_TBL t1 + WHERE t1.f1 && + (abstime 'Aug 15 14:23:19 1983' <#> + abstime 'Sep 16 14:23:19 1983') + ORDER BY t1.f1; + three | f1 +-------+----------------------------------------------------------------- + | ["-infinity" "infinity"] + | ["Sun Sep 04 23:59:12 1983 PDT" "Tue Oct 04 23:59:12 1983 PDT"] + | ["epoch" "Mon May 01 00:30:30 1995 PDT"] +(3 rows) + +RESET geqo; diff --git a/src/test/regress/resultmap b/src/test/regress/resultmap index 8e7db2cdab..94aea1471c 100644 --- a/src/test/regress/resultmap +++ b/src/test/regress/resultmap @@ -4,7 +4,13 @@ int2/.*-netbsd=int2-too-large int4/.*-netbsd=int4-too-large int2/i.86-pc-linux-gnulibc=int2-not-representable int4/i.86-pc-linux-gnulibc=int4-not-representable +int2/sparc-sun-solaris=int2-too-large +int4/sparc-sun-solaris=int4-too-large geometry/hppa=geometry-positive-zeros geometry/.*-netbsd=geometry-positive-zeros geometry/i.86-.*-gnulibc=geometry-i86-gnulibc +geometry/sparc-sun-solaris=geometry-solaris-precision horology/hppa=horology-no-DST-before-1970 +horology/sparc-sun-solaris=horology-solaris-1947 +abstime/sparc-sun-solaris=abstime-solaris-1947 +tinterval/sparc-sun-solaris=tinterval-solaris-1947 -- 2.40.0