diff options
| author | Tom Lane <tgl@sss.pgh.pa.us> | 2002-11-21 00:42:20 +0000 |
|---|---|---|
| committer | Tom Lane <tgl@sss.pgh.pa.us> | 2002-11-21 00:42:20 +0000 |
| commit | 6c1d4662afc6344ea7d98b5d1b248214ea0c7635 (patch) | |
| tree | e6b29fb9ae4aeff58eb35947255375d2085bc709 /src/test/regress/sql | |
| parent | 2676e11fdffb3ea1c56de9e22be4fb80b902f7fa (diff) | |
| download | postgresql-6c1d4662afc6344ea7d98b5d1b248214ea0c7635.tar.gz | |
Finish implementation of hashed aggregation. Add enable_hashagg GUC
parameter to allow it to be forced off for comparison purposes.
Add ORDER BY clauses to a bunch of regression test queries that will
otherwise produce randomly-ordered output in the new regime.
Diffstat (limited to 'src/test/regress/sql')
| -rw-r--r-- | src/test/regress/sql/aggregates.sql | 6 | ||||
| -rw-r--r-- | src/test/regress/sql/rules.sql | 4 | ||||
| -rw-r--r-- | src/test/regress/sql/select_having.sql | 11 | ||||
| -rw-r--r-- | src/test/regress/sql/select_implicit.sql | 26 | ||||
| -rw-r--r-- | src/test/regress/sql/subselect.sql | 2 |
5 files changed, 28 insertions, 21 deletions
diff --git a/src/test/regress/sql/aggregates.sql b/src/test/regress/sql/aggregates.sql index 33c8fb5f35..00cc6daf9f 100644 --- a/src/test/regress/sql/aggregates.sql +++ b/src/test/regress/sql/aggregates.sql @@ -36,9 +36,11 @@ SELECT count(four) AS cnt_1000 FROM onek; SELECT count(DISTINCT four) AS cnt_4 FROM onek; -select ten, count(*), sum(four) from onek group by ten; +select ten, count(*), sum(four) from onek +group by ten order by ten; -select ten, count(four), sum(DISTINCT four) from onek group by ten; +select ten, count(four), sum(DISTINCT four) from onek +group by ten order by ten; SELECT newavg(four) AS avg_1 FROM onek; diff --git a/src/test/regress/sql/rules.sql b/src/test/regress/sql/rules.sql index 6ded00a445..0a630194f2 100644 --- a/src/test/regress/sql/rules.sql +++ b/src/test/regress/sql/rules.sql @@ -451,7 +451,7 @@ insert into rtest_view2 values (7); select * from rtest_vview1; select * from rtest_vview2; select * from rtest_vview3; -select * from rtest_vview4; +select * from rtest_vview4 order by a, b; select * from rtest_vview5; insert into rtest_view3 select * from rtest_vview1 where a < 7; @@ -471,7 +471,7 @@ select * from rtest_view4; delete from rtest_view4; insert into rtest_view4 select * from rtest_vview5 where a > 2 and refcount = 0; -select * from rtest_view4; +select * from rtest_view4 order by a, b; delete from rtest_view4; -- -- Test for computations in views diff --git a/src/test/regress/sql/select_having.sql b/src/test/regress/sql/select_having.sql index 28b22d9859..72887d63c8 100644 --- a/src/test/regress/sql/select_having.sql +++ b/src/test/regress/sql/select_having.sql @@ -16,17 +16,18 @@ INSERT INTO test_having VALUES (8, 4, 'CCCC', 'I'); INSERT INTO test_having VALUES (9, 4, 'CCCC', 'j'); SELECT b, c FROM test_having - GROUP BY b, c HAVING count(*) = 1; + GROUP BY b, c HAVING count(*) = 1 ORDER BY b, c; -- HAVING is equivalent to WHERE in this case SELECT b, c FROM test_having - GROUP BY b, c HAVING b = 3; + GROUP BY b, c HAVING b = 3 ORDER BY b, c; SELECT lower(c), count(c) FROM test_having - GROUP BY lower(c) HAVING count(*) > 2 OR min(a) = max(a); + GROUP BY lower(c) HAVING count(*) > 2 OR min(a) = max(a) + ORDER BY lower(c); SELECT c, max(a) FROM test_having - GROUP BY c HAVING count(*) > 2 OR min(a) = max(a); + GROUP BY c HAVING count(*) > 2 OR min(a) = max(a) + ORDER BY c; DROP TABLE test_having; - diff --git a/src/test/regress/sql/select_implicit.sql b/src/test/regress/sql/select_implicit.sql index 607ea95bb1..60fac0b8bd 100644 --- a/src/test/regress/sql/select_implicit.sql +++ b/src/test/regress/sql/select_implicit.sql @@ -21,10 +21,10 @@ INSERT INTO test_missing_target VALUES (9, 4, 'CCCC', 'j'); -- w/ existing GROUP BY target -SELECT c, count(*) FROM test_missing_target GROUP BY test_missing_target.c; +SELECT c, count(*) FROM test_missing_target GROUP BY test_missing_target.c ORDER BY c; -- w/o existing GROUP BY target using a relation name in GROUP BY clause -SELECT count(*) FROM test_missing_target GROUP BY test_missing_target.c; +SELECT count(*) FROM test_missing_target GROUP BY test_missing_target.c ORDER BY c; -- w/o existing GROUP BY target and w/o existing a different ORDER BY target -- failure expected @@ -47,7 +47,7 @@ SELECT count(*) FROM test_missing_target GROUP BY b ORDER BY b desc; SELECT count(*) FROM test_missing_target ORDER BY 1 desc; -- order using reference number -SELECT c, count(*) FROM test_missing_target GROUP BY 1; +SELECT c, count(*) FROM test_missing_target GROUP BY 1 ORDER BY 1; -- group using reference number out of range -- failure expected @@ -72,34 +72,38 @@ SELECT a/2, a/2 FROM test_missing_target -- group expression w/ target under ambiguous condition -- failure NOT expected SELECT a/2, a/2 FROM test_missing_target - GROUP BY a/2; + GROUP BY a/2 ORDER BY a/2; -- group w/ existing GROUP BY target under ambiguous condition SELECT x.b, count(*) FROM test_missing_target x, test_missing_target y WHERE x.a = y.a - GROUP BY x.b; + GROUP BY x.b ORDER BY x.b; -- group w/o existing GROUP BY target under ambiguous condition SELECT count(*) FROM test_missing_target x, test_missing_target y WHERE x.a = y.a - GROUP BY x.b; + GROUP BY x.b ORDER BY x.b; -- group w/o existing GROUP BY target under ambiguous condition -- into a table SELECT count(*) INTO TABLE test_missing_target2 FROM test_missing_target x, test_missing_target y WHERE x.a = y.a - GROUP BY x.b; + GROUP BY x.b ORDER BY x.b; SELECT * FROM test_missing_target2; -- Functions and expressions -- w/ existing GROUP BY target -SELECT a%2, count(b) FROM test_missing_target GROUP BY test_missing_target.a%2; +SELECT a%2, count(b) FROM test_missing_target +GROUP BY test_missing_target.a%2 +ORDER BY test_missing_target.a%2; -- w/o existing GROUP BY target using a relation name in GROUP BY clause -SELECT count(c) FROM test_missing_target GROUP BY lower(test_missing_target.c); +SELECT count(c) FROM test_missing_target +GROUP BY lower(test_missing_target.c) +ORDER BY lower(test_missing_target.c); -- w/o existing GROUP BY target and w/o existing a different ORDER BY target -- failure expected @@ -128,7 +132,7 @@ SELECT count(x.a) FROM test_missing_target x, test_missing_target y -- group w/ existing GROUP BY target under ambiguous condition SELECT x.b/2, count(x.b) FROM test_missing_target x, test_missing_target y WHERE x.a = y.a - GROUP BY x.b/2; + GROUP BY x.b/2 ORDER BY x.b/2; -- group w/o existing GROUP BY target under ambiguous condition -- failure expected due to ambiguous b in count(b) @@ -141,7 +145,7 @@ SELECT count(b) FROM test_missing_target x, test_missing_target y SELECT count(x.b) INTO TABLE test_missing_target3 FROM test_missing_target x, test_missing_target y WHERE x.a = y.a - GROUP BY x.b/2; + GROUP BY x.b/2 ORDER BY x.b/2; SELECT * FROM test_missing_target3; -- Cleanup diff --git a/src/test/regress/sql/subselect.sql b/src/test/regress/sql/subselect.sql index b3a4ff5284..c2cde6ac20 100644 --- a/src/test/regress/sql/subselect.sql +++ b/src/test/regress/sql/subselect.sql @@ -74,4 +74,4 @@ SELECT '' AS eight, ss.f1 AS "Correlated Field", ss.f3 AS "Second Field" WHERE f1 NOT IN (SELECT f1+1 FROM INT4_TBL WHERE f1 != ss.f1); select q1, float8(count(*)) / (select count(*) from int8_tbl) -from int8_tbl group by q1; +from int8_tbl group by q1 order by q1; |
