mirror of https://github.com/postgres/postgres
parent
6e0cc2ac45
commit
67ac38085c
@ -1,23 +1,35 @@ |
||||
QUERY: SELECT count(*) FROM onek; |
||||
-- |
||||
-- RANDOM |
||||
-- Test the random function |
||||
-- |
||||
-- count the number of tuples originally |
||||
SELECT count(*) FROM onek; |
||||
count |
||||
----- |
||||
------- |
||||
1000 |
||||
(1 row) |
||||
|
||||
QUERY: SELECT count(*) AS random INTO RANDOM_TBL |
||||
-- select roughly 1/10 of the tuples |
||||
-- Assume that the "onek" table has 1000 tuples |
||||
-- and try to bracket the correct number so we |
||||
-- have a regression test which can pass/fail |
||||
-- - thomas 1998-08-17 |
||||
SELECT count(*) AS random INTO RANDOM_TBL |
||||
FROM onek WHERE oidrand(onek.oid, 10); |
||||
QUERY: INSERT INTO RANDOM_TBL (random) |
||||
-- select again, the count should be different |
||||
INSERT INTO RANDOM_TBL (random) |
||||
SELECT count(*) |
||||
FROM onek WHERE oidrand(onek.oid, 10); |
||||
QUERY: SELECT random, count(random) FROM RANDOM_TBL |
||||
-- now test the results for randomness in the correct range |
||||
SELECT random, count(random) FROM RANDOM_TBL |
||||
GROUP BY random HAVING count(random) > 1; |
||||
random | count |
||||
------+----- |
||||
--------+------- |
||||
(0 rows) |
||||
|
||||
QUERY: SELECT random FROM RANDOM_TBL |
||||
SELECT random FROM RANDOM_TBL |
||||
WHERE random NOT BETWEEN 80 AND 120; |
||||
random |
||||
------ |
||||
-------- |
||||
(0 rows) |
||||
|
||||
|
@ -1,37 +1,41 @@ |
||||
QUERY: CREATE TABLE test_having (a int, b int, c char(8), d char); |
||||
QUERY: INSERT INTO test_having VALUES (0, 1, 'XXXX', 'A'); |
||||
QUERY: INSERT INTO test_having VALUES (1, 2, 'AAAA', 'b'); |
||||
QUERY: INSERT INTO test_having VALUES (2, 2, 'AAAA', 'c'); |
||||
QUERY: INSERT INTO test_having VALUES (3, 3, 'BBBB', 'D'); |
||||
QUERY: INSERT INTO test_having VALUES (4, 3, 'BBBB', 'e'); |
||||
QUERY: INSERT INTO test_having VALUES (5, 3, 'bbbb', 'F'); |
||||
QUERY: INSERT INTO test_having VALUES (6, 4, 'cccc', 'g'); |
||||
QUERY: INSERT INTO test_having VALUES (7, 4, 'cccc', 'h'); |
||||
QUERY: INSERT INTO test_having VALUES (8, 4, 'CCCC', 'I'); |
||||
QUERY: INSERT INTO test_having VALUES (9, 4, 'CCCC', 'j'); |
||||
QUERY: SELECT b, c FROM test_having |
||||
-- |
||||
-- SELECT_HAVING |
||||
-- |
||||
-- load test data |
||||
CREATE TABLE test_having (a int, b int, c char(8), d char); |
||||
INSERT INTO test_having VALUES (0, 1, 'XXXX', 'A'); |
||||
INSERT INTO test_having VALUES (1, 2, 'AAAA', 'b'); |
||||
INSERT INTO test_having VALUES (2, 2, 'AAAA', 'c'); |
||||
INSERT INTO test_having VALUES (3, 3, 'BBBB', 'D'); |
||||
INSERT INTO test_having VALUES (4, 3, 'BBBB', 'e'); |
||||
INSERT INTO test_having VALUES (5, 3, 'bbbb', 'F'); |
||||
INSERT INTO test_having VALUES (6, 4, 'cccc', 'g'); |
||||
INSERT INTO test_having VALUES (7, 4, 'cccc', 'h'); |
||||
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; |
||||
b | c |
||||
-+-------- |
||||
---+---------- |
||||
1 | XXXX |
||||
3 | bbbb |
||||
(2 rows) |
||||
|
||||
QUERY: SELECT lower(c), count(c) FROM test_having |
||||
SELECT lower(c), count(c) FROM test_having |
||||
GROUP BY lower(c) HAVING count(*) > 2 OR min(a) = max(a); |
||||
lower | count |
||||
--------+----- |
||||
----------+------- |
||||
bbbb | 3 |
||||
cccc | 4 |
||||
xxxx | 1 |
||||
(3 rows) |
||||
|
||||
QUERY: SELECT c, max(a) FROM test_having |
||||
SELECT c, max(a) FROM test_having |
||||
GROUP BY c HAVING count(*) > 2 OR min(a) = max(a); |
||||
c | max |
||||
--------+--- |
||||
----------+----- |
||||
XXXX | 0 |
||||
bbbb | 5 |
||||
(2 rows) |
||||
|
||||
QUERY: DROP TABLE test_having; |
||||
DROP TABLE test_having; |
||||
|
@ -1,10 +1,13 @@ |
||||
QUERY: SELECT * |
||||
-- |
||||
-- SELECT_INTO |
||||
-- |
||||
SELECT * |
||||
INTO TABLE tmp1 |
||||
FROM tmp |
||||
WHERE onek.unique1 < 2; |
||||
QUERY: DROP TABLE tmp1; |
||||
QUERY: SELECT * |
||||
DROP TABLE tmp1; |
||||
SELECT * |
||||
INTO TABLE tmp1 |
||||
FROM tmp |
||||
WHERE onek2.unique1 < 2; |
||||
QUERY: DROP TABLE tmp1; |
||||
DROP TABLE tmp1; |
||||
|
Loading…
Reference in new issue