mirror of https://github.com/postgres/postgres
parent
348ab94822
commit
4aa0e645e2
@ -0,0 +1,94 @@ |
||||
QUERY: CREATE TABLE JOIN_TBL ( |
||||
i integer, |
||||
j integer, |
||||
x text |
||||
); |
||||
QUERY: CREATE TABLE JOIN2_TBL ( |
||||
i integer, |
||||
k integer |
||||
); |
||||
QUERY: INSERT INTO JOIN_TBL VALUES (1, 3, 'one'); |
||||
QUERY: INSERT INTO JOIN_TBL VALUES (2, 2, 'two'); |
||||
QUERY: INSERT INTO JOIN_TBL VALUES (3, 1, 'three'); |
||||
QUERY: INSERT INTO JOIN_TBL VALUES (4, 0, 'four'); |
||||
QUERY: INSERT INTO JOIN2_TBL VALUES (1, -1); |
||||
QUERY: INSERT INTO JOIN2_TBL VALUES (2, 2); |
||||
QUERY: INSERT INTO JOIN2_TBL VALUES (3, -3); |
||||
QUERY: INSERT INTO JOIN2_TBL VALUES (2, 4); |
||||
QUERY: SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL CROSS JOIN JOIN2_TBL; |
||||
xxx|i|j|x |i| k |
||||
---+-+-+-----+-+-- |
||||
|1|3|one |1|-1 |
||||
|2|2|two |1|-1 |
||||
|3|1|three|1|-1 |
||||
|4|0|four |1|-1 |
||||
|1|3|one |2| 2 |
||||
|2|2|two |2| 2 |
||||
|3|1|three|2| 2 |
||||
|4|0|four |2| 2 |
||||
|1|3|one |3|-3 |
||||
|2|2|two |3|-3 |
||||
|3|1|three|3|-3 |
||||
|4|0|four |3|-3 |
||||
|1|3|one |2| 4 |
||||
|2|2|two |2| 4 |
||||
|3|1|three|2| 4 |
||||
|4|0|four |2| 4 |
||||
(16 rows) |
||||
|
||||
QUERY: SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL NATURAL JOIN JOIN2_TBL; |
||||
ERROR: JOIN expressions are not yet implemented |
||||
QUERY: SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL INNER JOIN JOIN2_TBL USING (i); |
||||
ERROR: JOIN expressions are not yet implemented |
||||
QUERY: SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL JOIN JOIN2_TBL ON (JOIN_TBL.i = JOIN2_TBL.i); |
||||
ERROR: JOIN expressions are not yet implemented |
||||
QUERY: SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL JOIN JOIN2_TBL ON (JOIN_TBL.i = JOIN2_TBL.k); |
||||
ERROR: JOIN expressions are not yet implemented |
||||
QUERY: SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL CROSS JOIN JOIN2_TBL; |
||||
xxx|i|j|x |i| k |
||||
---+-+-+-----+-+-- |
||||
|1|3|one |1|-1 |
||||
|2|2|two |1|-1 |
||||
|3|1|three|1|-1 |
||||
|4|0|four |1|-1 |
||||
|1|3|one |2| 2 |
||||
|2|2|two |2| 2 |
||||
|3|1|three|2| 2 |
||||
|4|0|four |2| 2 |
||||
|1|3|one |3|-3 |
||||
|2|2|two |3|-3 |
||||
|3|1|three|3|-3 |
||||
|4|0|four |3|-3 |
||||
|1|3|one |2| 4 |
||||
|2|2|two |2| 4 |
||||
|3|1|three|2| 4 |
||||
|4|0|four |2| 4 |
||||
(16 rows) |
||||
|
||||
QUERY: SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL JOIN JOIN2_TBL ON (JOIN_TBL.i <= JOIN2_TBL.k); |
||||
ERROR: JOIN expressions are not yet implemented |
||||
QUERY: SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL OUTER JOIN JOIN2_TBL USING (i); |
||||
NOTICE: OUTER JOIN not yet implemented |
||||
ERROR: JOIN expressions are not yet implemented |
||||
QUERY: SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL LEFT OUTER JOIN JOIN2_TBL USING (i); |
||||
NOTICE: LEFT OUTER JOIN not yet implemented |
||||
ERROR: JOIN expressions are not yet implemented |
||||
QUERY: SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL RIGHT OUTER JOIN JOIN2_TBL USING (i); |
||||
NOTICE: RIGHT OUTER JOIN not yet implemented |
||||
ERROR: JOIN expressions are not yet implemented |
||||
QUERY: SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL FULL OUTER JOIN JOIN2_TBL USING (i); |
||||
NOTICE: FULL OUTER JOIN not yet implemented |
||||
ERROR: JOIN expressions are not yet implemented |
||||
QUERY: DROP TABLE JOIN_TBL; |
||||
QUERY: DROP TABLE JOIN2_TBL; |
@ -0,0 +1,87 @@ |
||||
-- |
||||
-- join.sql |
||||
-- |
||||
-- Test join clauses |
||||
-- |
||||
|
||||
CREATE TABLE JOIN_TBL ( |
||||
i integer, |
||||
j integer, |
||||
x text |
||||
); |
||||
|
||||
CREATE TABLE JOIN2_TBL ( |
||||
i integer, |
||||
k integer |
||||
); |
||||
|
||||
INSERT INTO JOIN_TBL VALUES (1, 3, 'one'); |
||||
INSERT INTO JOIN_TBL VALUES (2, 2, 'two'); |
||||
INSERT INTO JOIN_TBL VALUES (3, 1, 'three'); |
||||
INSERT INTO JOIN_TBL VALUES (4, 0, 'four'); |
||||
|
||||
INSERT INTO JOIN2_TBL VALUES (1, -1); |
||||
INSERT INTO JOIN2_TBL VALUES (2, 2); |
||||
INSERT INTO JOIN2_TBL VALUES (3, -3); |
||||
INSERT INTO JOIN2_TBL VALUES (2, 4); |
||||
|
||||
|
||||
-- |
||||
-- Inner joins (equi-joins) |
||||
-- |
||||
|
||||
SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL CROSS JOIN JOIN2_TBL; |
||||
|
||||
SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL NATURAL JOIN JOIN2_TBL; |
||||
|
||||
SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL INNER JOIN JOIN2_TBL USING (i); |
||||
|
||||
SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL JOIN JOIN2_TBL ON (JOIN_TBL.i = JOIN2_TBL.i); |
||||
|
||||
SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL JOIN JOIN2_TBL ON (JOIN_TBL.i = JOIN2_TBL.k); |
||||
|
||||
SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL CROSS JOIN JOIN2_TBL; |
||||
|
||||
|
||||
-- |
||||
-- Non-equi-joins |
||||
-- |
||||
|
||||
SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL JOIN JOIN2_TBL ON (JOIN_TBL.i <= JOIN2_TBL.k); |
||||
|
||||
|
||||
-- |
||||
-- Outer joins |
||||
-- |
||||
|
||||
SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL OUTER JOIN JOIN2_TBL USING (i); |
||||
|
||||
SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL LEFT OUTER JOIN JOIN2_TBL USING (i); |
||||
|
||||
SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL RIGHT OUTER JOIN JOIN2_TBL USING (i); |
||||
|
||||
SELECT '' AS "xxx", * |
||||
FROM JOIN_TBL FULL OUTER JOIN JOIN2_TBL USING (i); |
||||
|
||||
|
||||
-- |
||||
-- More complicated constructs |
||||
-- |
||||
|
||||
-- |
||||
-- Clean up |
||||
-- |
||||
|
||||
DROP TABLE JOIN_TBL; |
||||
DROP TABLE JOIN2_TBL; |
||||
|
Loading…
Reference in new issue