diff --git a/src/test/regress/expected/errors.out b/src/test/regress/expected/errors.out index 92644c7c8f..1add0bcc9c 100644 --- a/src/test/regress/expected/errors.out +++ b/src/test/regress/expected/errors.out @@ -11,7 +11,7 @@ ERROR: attribute 'nonesuch' not found QUERY: select distinct on foobar from pg_database; ERROR: parser: parse error at or near "from" QUERY: select distinct on foobar * from pg_database; -ERROR: The field specified in the UNIQUE ON clause is not in the targetlist +ERROR: All fields in the UNIQUE ON clause must appear in the target list QUERY: delete from; ERROR: parser: parse error at or near ";" QUERY: delete from nonesuch; diff --git a/src/test/regress/expected/geometry.out b/src/test/regress/expected/geometry.out index a423ae314e..bc30045cac 100644 --- a/src/test/regress/expected/geometry.out +++ b/src/test/regress/expected/geometry.out @@ -87,43 +87,42 @@ one|f1 QUERY: SELECT '' AS count, p.f1, l.s, l.s # p.f1 AS intersection FROM LSEG_TBL l, POINT_TBL p; -ERROR: There is no operator '#' for types 'lseg' and 'point' - You will either have to retype this query using an explicit cast, - or you will have to define the operator using CREATE OPERATOR +ERROR: There is more than one possible operator '#' for types 'lseg' and 'point' + You will have to retype this query using an explicit cast QUERY: 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,0) - |(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)] |(-3,-4) - |(-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)] |(-3,-4) - |(10,10) |[(10,-10),(-3,-4)] |(-3,-4) - |(0,0) |[(-1000000,200),(300000,-40)]|(0.0028402365895872,15.384614860264) - |(-10,0) |[(-1000000,200),(300000,-40)]|(-9.99715942258202,15.3864610140473) - |(-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)] |(11,22) - |(-5,-12) |[(11,22),(33,44)] |(11,22) - |(10,10) |[(11,22),(33,44)] |(11,22) +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.3864610140473) + |(-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) QUERY: SELECT '' as six, box(f1) AS box FROM CIRCLE_TBL; diff --git a/src/test/regress/expected/strings.out b/src/test/regress/expected/strings.out index acac8ee7b0..62a4e06417 100644 --- a/src/test/regress/expected/strings.out +++ b/src/test/regress/expected/strings.out @@ -9,9 +9,146 @@ first line - next line - third line QUERY: SELECT 'first line' ' - next line' /* this comment is not allowed here */ -' - third line'; +' - third line' + AS "Illegal comment within continuation"; ERROR: parser: parse error at or near "'" -QUERY: SELECT text(f1) FROM CHAR_TBL; -ERROR: function text(bpchar) does not exist -QUERY: SELECT text(f1) FROM VARCHAR_TBL; -ERROR: function text(varchar) does not exist +QUERY: SELECT CAST(f1 AS text) AS "text(char)" FROM CHAR_TBL; +text(char) +---------- +a +ab +abcd +abcd +(4 rows) + +QUERY: SELECT CAST(f1 AS text) AS "text(varchar)" FROM VARCHAR_TBL; +text(varchar) +------------- +a +ab +abcd +abcd +(4 rows) + +QUERY: SELECT CAST(name 'namefield' AS text) AS "text(name)"; +text(name) +---------- +namefield +(1 row) + +QUERY: SELECT CAST(f1 AS char) AS "char(text)" FROM TEXT_TBL; +char(text) +----------------- +doh! +hi de ho neighbor +(2 rows) + +QUERY: SELECT CAST(f1 AS char) AS "char(varchar)" FROM VARCHAR_TBL; +char(varchar) +------------- +a +ab +abcd +abcd +(4 rows) + +QUERY: SELECT CAST(name 'namefield' AS char) AS "char(name)"; +char(name) +---------- +namefield +(1 row) + +QUERY: SELECT CAST(f1 AS varchar) AS "varchar(text)" FROM TEXT_TBL; +varchar(text) +----------------- +doh! +hi de ho neighbor +(2 rows) + +QUERY: SELECT CAST(f1 AS varchar) AS "varchar(char)" FROM CHAR_TBL; +varchar(char) +------------- +a +ab +abcd +abcd +(4 rows) + +QUERY: SELECT CAST(name 'namefield' AS varchar) AS "varchar(name)"; +varchar(name) +------------- +namefield +(1 row) + +QUERY: SELECT TRIM(BOTH FROM ' bunch o blanks ') AS "bunch o blanks"; +bunch o blanks +-------------- +bunch o blanks +(1 row) + +QUERY: SELECT TRIM(LEADING FROM ' bunch o blanks ') AS "bunch o blanks "; +bunch o blanks +---------------- +bunch o blanks +(1 row) + +QUERY: SELECT TRIM(TRAILING FROM ' bunch o blanks ') AS " bunch o blanks"; + bunch o blanks +---------------- + bunch o blanks +(1 row) + +QUERY: SELECT TRIM(BOTH 'x' FROM 'xxxxxsome Xsxxxxx') AS "some Xs"; +some Xs +------- +some Xs +(1 row) + +QUERY: SELECT SUBSTRING('1234567890' FROM 3) AS "34567890"; +34567890 +-------- +34567890 +(1 row) + +QUERY: SELECT SUBSTRING('1234567890' FROM 4 FOR 3) AS "456"; +456 +--- +456 +(1 row) + +QUERY: SELECT POSITION('4' IN '1234567890') AS "4"; +4 +- +4 +(1 row) + +QUERY: SELECT POSITION(5 IN '1234567890') AS "5"; +5 +- +5 +(1 row) + +QUERY: SELECT 'unknown' || ' and unknown' AS "Concat unknown types"; +Concat unknown types +-------------------- +unknown and unknown +(1 row) + +QUERY: SELECT text 'text' || ' and unknown' AS "Concat text to unknown type"; +Concat text to unknown type +--------------------------- +text and unknown +(1 row) + +QUERY: SELECT text 'text' || char ' and char' AS "Concat text to char"; +Concat text to char +------------------- +text and char +(1 row) + +QUERY: SELECT text 'text' || varchar ' and varchar' AS "Concat text to varchar"; +Concat text to varchar +---------------------- +text and varchar +(1 row) + diff --git a/src/test/regress/expected/union.out b/src/test/regress/expected/union.out new file mode 100644 index 0000000000..8b0f6d7161 --- /dev/null +++ b/src/test/regress/expected/union.out @@ -0,0 +1,241 @@ +QUERY: SELECT 1 AS two UNION SELECT 2; +two +--- + 1 + 2 +(2 rows) + +QUERY: SELECT 1 AS one UNION SELECT 1; +one +--- + 1 +(1 row) + +QUERY: SELECT 1 AS two UNION ALL SELECT 2; +two +--- + 1 + 2 +(2 rows) + +QUERY: SELECT 1 AS two UNION ALL SELECT 1; +two +--- + 1 + 1 +(2 rows) + +QUERY: SELECT 1 AS three UNION SELECT 2 UNION SELECT 3; +three +----- + 1 + 2 + 3 +(3 rows) + +QUERY: SELECT 1 AS two UNION SELECT 2 UNION SELECT 2; +two +--- + 1 + 2 +(2 rows) + +QUERY: SELECT 1 AS three UNION SELECT 2 UNION ALL SELECT 2; +three +----- + 1 + 2 + 2 +(3 rows) + +QUERY: SELECT 1.1 AS two UNION SELECT 2.2; +two +--- +1.1 +2.2 +(2 rows) + +QUERY: SELECT 1.1 AS two UNION SELECT 2; +two +--- +1.1 + 2 +(2 rows) + +QUERY: SELECT 1 AS two UNION SELECT 2.2; +two +--- + 1 + 2 +(2 rows) + +QUERY: SELECT 1 AS one UNION SELECT 1.1; +one +--- + 1 +(1 row) + +QUERY: SELECT 1.1 AS two UNION ALL SELECT 2; +two +--- +1.1 + 2 +(2 rows) + +QUERY: SELECT 1 AS two UNION ALL SELECT 1; +two +--- + 1 + 1 +(2 rows) + +QUERY: SELECT 1 AS three UNION SELECT 2 UNION SELECT 3; +three +----- + 1 + 2 + 3 +(3 rows) + +QUERY: SELECT 1 AS two UNION SELECT 2 UNION SELECT 2; +two +--- + 1 + 2 +(2 rows) + +QUERY: SELECT 1 AS three UNION SELECT 2 UNION ALL SELECT 2; +three +----- + 1 + 2 + 2 +(3 rows) + +QUERY: SELECT f1 AS five FROM FLOAT8_TBL +UNION +SELECT f1 FROM FLOAT8_TBL; +five +--------------------- +-1.2345678901234e+200 +-1004.3 +-34.84 +-1.2345678901234e-200 +0 +(5 rows) + +QUERY: SELECT f1 AS ten FROM FLOAT8_TBL +UNION ALL +SELECT f1 FROM FLOAT8_TBL; +ten +--------------------- +0 +-34.84 +-1004.3 +-1.2345678901234e+200 +-1.2345678901234e-200 +0 +-34.84 +-1004.3 +-1.2345678901234e+200 +-1.2345678901234e-200 +(10 rows) + +QUERY: SELECT f1 AS nine FROM FLOAT8_TBL +UNION +SELECT f1 FROM INT4_TBL; +nine +--------------------- +-1.2345678901234e+200 +-2147483647 +-123456 +-1004.3 +-34.84 +-1.2345678901234e-200 +0 +123456 +2147483647 +(9 rows) + +QUERY: SELECT f1 AS ten FROM FLOAT8_TBL +UNION ALL +SELECT f1 FROM INT4_TBL; +ten +--------------------- +0 +-34.84 +-1004.3 +-1.2345678901234e+200 +-1.2345678901234e-200 +0 +123456 +-123456 +2147483647 +-2147483647 +(10 rows) + +QUERY: SELECT f1 AS five FROM FLOAT8_TBL + WHERE f1 BETWEEN -1e6 AND 1e6 +UNION +SELECT f1 FROM INT4_TBL + WHERE f1 BETWEEN 0 AND 1000000; + five +--------------------- + -1004.3 + -34.84 +-1.2345678901234e-200 + 0 + 123456 +(5 rows) + +QUERY: SELECT f1 AS five FROM VARCHAR_TBL +UNION +SELECT f1 FROM CHAR_TBL; +five +---- +a +a +ab +ab +abcd +(5 rows) + +QUERY: SELECT f1 AS three FROM VARCHAR_TBL +UNION +SELECT TRIM(TRAILING FROM f1) FROM CHAR_TBL; +three +----- +a +ab +abcd +(3 rows) + +QUERY: SELECT f1 AS eight FROM VARCHAR_TBL +UNION ALL +SELECT f1 FROM CHAR_TBL; +eight +----- +a +ab +abcd +abcd +a +ab +abcd +abcd +(8 rows) + +QUERY: SELECT f1 AS five FROM TEXT_TBL +UNION +SELECT f1 FROM VARCHAR_TBL +UNION +SELECT TRIM(TRAILING FROM f1) FROM CHAR_TBL; +five +----------------- +a +ab +abcd +doh! +hi de ho neighbor +(5 rows) +