*** ./expected/join.out Mon Nov 6 20:23:47 2000 --- ./results/join.out Wed Nov 22 15:37:01 2000 *************** *** 214,226 **** WHERE t1.a = t2.d; xxx | a | e -----+---+---- - | 0 | | 1 | -1 | 2 | 2 | 2 | 4 | 3 | -3 | 5 | -5 | 5 | -5 (7 rows) -- --- 214,226 ---- WHERE t1.a = t2.d; xxx | a | e -----+---+---- | 1 | -1 | 2 | 2 | 2 | 4 | 3 | -3 | 5 | -5 | 5 | -5 + | 0 | (7 rows) -- *************** *** 1567,1579 **** FROM J1_TBL INNER JOIN J2_TBL USING (i); xxx | i | j | t | k -----+---+---+-------+---- - | 0 | | zero | | 1 | 4 | one | -1 | 2 | 3 | two | 2 | 2 | 3 | two | 4 | 3 | 2 | three | -3 | 5 | 0 | five | -5 | 5 | 0 | five | -5 (7 rows) -- Same as above, slightly different syntax --- 1567,1579 ---- FROM J1_TBL INNER JOIN J2_TBL USING (i); xxx | i | j | t | k -----+---+---+-------+---- | 1 | 4 | one | -1 | 2 | 3 | two | 2 | 2 | 3 | two | 4 | 3 | 2 | three | -3 | 5 | 0 | five | -5 | 5 | 0 | five | -5 + | 0 | | zero | (7 rows) -- Same as above, slightly different syntax *************** *** 1581,1593 **** FROM J1_TBL JOIN J2_TBL USING (i); xxx | i | j | t | k -----+---+---+-------+---- - | 0 | | zero | | 1 | 4 | one | -1 | 2 | 3 | two | 2 | 2 | 3 | two | 4 | 3 | 2 | three | -3 | 5 | 0 | five | -5 | 5 | 0 | five | -5 (7 rows) SELECT '' AS "xxx", * --- 1581,1593 ---- FROM J1_TBL JOIN J2_TBL USING (i); xxx | i | j | t | k -----+---+---+-------+---- | 1 | 4 | one | -1 | 2 | 3 | two | 2 | 2 | 3 | two | 4 | 3 | 2 | three | -3 | 5 | 0 | five | -5 | 5 | 0 | five | -5 + | 0 | | zero | (7 rows) SELECT '' AS "xxx", * *************** *** 1623,1657 **** FROM J1_TBL NATURAL JOIN J2_TBL; xxx | i | j | t | k -----+---+---+-------+---- - | 0 | | zero | | 1 | 4 | one | -1 | 2 | 3 | two | 2 | 2 | 3 | two | 4 | 3 | 2 | three | -3 | 5 | 0 | five | -5 | 5 | 0 | five | -5 (7 rows) SELECT '' AS "xxx", * FROM J1_TBL t1 (a, b, c) NATURAL JOIN J2_TBL t2 (a, d); xxx | a | b | c | d -----+---+---+-------+---- - | 0 | | zero | | 1 | 4 | one | -1 | 2 | 3 | two | 2 | 2 | 3 | two | 4 | 3 | 2 | three | -3 | 5 | 0 | five | -5 | 5 | 0 | five | -5 (7 rows) SELECT '' AS "xxx", * FROM J1_TBL t1 (a, b, c) NATURAL JOIN J2_TBL t2 (d, a); xxx | a | b | c | d -----+---+---+------+--- - | 0 | | zero | | 2 | 3 | two | 2 | 4 | 1 | four | 2 (3 rows) -- mismatch number of columns --- 1623,1657 ---- FROM J1_TBL NATURAL JOIN J2_TBL; xxx | i | j | t | k -----+---+---+-------+---- | 1 | 4 | one | -1 | 2 | 3 | two | 2 | 2 | 3 | two | 4 | 3 | 2 | three | -3 | 5 | 0 | five | -5 | 5 | 0 | five | -5 + | 0 | | zero | (7 rows) SELECT '' AS "xxx", * FROM J1_TBL t1 (a, b, c) NATURAL JOIN J2_TBL t2 (a, d); xxx | a | b | c | d -----+---+---+-------+---- | 1 | 4 | one | -1 | 2 | 3 | two | 2 | 2 | 3 | two | 4 | 3 | 2 | three | -3 | 5 | 0 | five | -5 | 5 | 0 | five | -5 + | 0 | | zero | (7 rows) SELECT '' AS "xxx", * FROM J1_TBL t1 (a, b, c) NATURAL JOIN J2_TBL t2 (d, a); xxx | a | b | c | d -----+---+---+------+--- | 2 | 3 | two | 2 | 4 | 1 | four | 2 + | 0 | | zero | (3 rows) -- mismatch number of columns *************** *** 1660,1672 **** FROM J1_TBL t1 (a, b) NATURAL JOIN J2_TBL t2 (a); xxx | a | b | t | k -----+---+---+-------+---- - | 0 | | zero | | 1 | 4 | one | -1 | 2 | 3 | two | 2 | 2 | 3 | two | 4 | 3 | 2 | three | -3 | 5 | 0 | five | -5 | 5 | 0 | five | -5 (7 rows) -- --- 1660,1672 ---- FROM J1_TBL t1 (a, b) NATURAL JOIN J2_TBL t2 (a); xxx | a | b | t | k -----+---+---+-------+---- | 1 | 4 | one | -1 | 2 | 3 | two | 2 | 2 | 3 | two | 4 | 3 | 2 | three | -3 | 5 | 0 | five | -5 | 5 | 0 | five | -5 + | 0 | | zero | (7 rows) -- *************** *** 1676,1697 **** FROM J1_TBL JOIN J2_TBL ON (J1_TBL.i = J2_TBL.i); xxx | i | j | t | i | k -----+---+---+-------+---+---- - | 0 | | zero | 0 | | 1 | 4 | one | 1 | -1 | 2 | 3 | two | 2 | 2 | 2 | 3 | two | 2 | 4 | 3 | 2 | three | 3 | -3 | 5 | 0 | five | 5 | -5 | 5 | 0 | five | 5 | -5 (7 rows) SELECT '' AS "xxx", * FROM J1_TBL JOIN J2_TBL ON (J1_TBL.i = J2_TBL.k); xxx | i | j | t | i | k -----+---+---+------+---+--- - | 0 | | zero | | 0 | 2 | 3 | two | 2 | 2 | 4 | 1 | four | 2 | 4 (3 rows) -- --- 1676,1697 ---- FROM J1_TBL JOIN J2_TBL ON (J1_TBL.i = J2_TBL.i); xxx | i | j | t | i | k -----+---+---+-------+---+---- | 1 | 4 | one | 1 | -1 | 2 | 3 | two | 2 | 2 | 2 | 3 | two | 2 | 4 | 3 | 2 | three | 3 | -3 | 5 | 0 | five | 5 | -5 | 5 | 0 | five | 5 | -5 + | 0 | | zero | 0 | (7 rows) SELECT '' AS "xxx", * FROM J1_TBL JOIN J2_TBL ON (J1_TBL.i = J2_TBL.k); xxx | i | j | t | i | k -----+---+---+------+---+--- | 2 | 3 | two | 2 | 2 | 4 | 1 | four | 2 | 4 + | 0 | | zero | | 0 (3 rows) -- *************** *** 1720,1726 **** FROM J1_TBL LEFT OUTER JOIN J2_TBL USING (i); xxx | i | j | t | k -----+---+---+-------+---- - | 0 | | zero | | 1 | 4 | one | -1 | 2 | 3 | two | 2 | 2 | 3 | two | 4 --- 1720,1725 ---- *************** *** 1731,1736 **** --- 1730,1736 ---- | 6 | 6 | six | | 7 | 7 | seven | | 8 | 8 | eight | + | 0 | | zero | | | | null | | | 0 | zero | (13 rows) *************** *** 1739,1745 **** FROM J1_TBL LEFT JOIN J2_TBL USING (i); xxx | i | j | t | k -----+---+---+-------+---- - | 0 | | zero | | 1 | 4 | one | -1 | 2 | 3 | two | 2 | 2 | 3 | two | 4 --- 1739,1744 ---- *************** *** 1750,1755 **** --- 1749,1755 ---- | 6 | 6 | six | | 7 | 7 | seven | | 8 | 8 | eight | + | 0 | | zero | | | | null | | | 0 | zero | (13 rows) *************** *** 1758,1770 **** FROM J1_TBL RIGHT OUTER JOIN J2_TBL USING (i); xxx | i | j | t | k -----+---+---+-------+---- - | 0 | | zero | | 1 | 4 | one | -1 | 2 | 3 | two | 2 - | 2 | 3 | two | 4 | 3 | 2 | three | -3 | 5 | 0 | five | -5 | 5 | 0 | five | -5 | | | | | | | | 0 (9 rows) --- 1758,1770 ---- FROM J1_TBL RIGHT OUTER JOIN J2_TBL USING (i); xxx | i | j | t | k -----+---+---+-------+---- | 1 | 4 | one | -1 | 2 | 3 | two | 2 | 3 | 2 | three | -3 + | 2 | 3 | two | 4 | 5 | 0 | five | -5 | 5 | 0 | five | -5 + | 0 | | zero | | | | | | | | | 0 (9 rows) *************** *** 1773,1831 **** FROM J1_TBL RIGHT JOIN J2_TBL USING (i); xxx | i | j | t | k -----+---+---+-------+---- - | 0 | | zero | | 1 | 4 | one | -1 | 2 | 3 | two | 2 - | 2 | 3 | two | 4 | 3 | 2 | three | -3 | 5 | 0 | five | -5 | 5 | 0 | five | -5 | | | | | | | | 0 (9 rows) SELECT '' AS "xxx", * FROM J1_TBL FULL OUTER JOIN J2_TBL USING (i); ! xxx | i | j | t | k ! -----+---+---+-------+---- ! | 0 | | zero | ! | 1 | 4 | one | -1 ! | 2 | 3 | two | 2 ! | 2 | 3 | two | 4 ! | 3 | 2 | three | -3 ! | 4 | 1 | four | ! | 5 | 0 | five | -5 ! | 5 | 0 | five | -5 ! | | | | ! | | | | 0 ! | 6 | 6 | six | ! | 7 | 7 | seven | ! | 8 | 8 | eight | ! | | | null | ! | | 0 | zero | ! (15 rows) ! SELECT '' AS "xxx", * FROM J1_TBL FULL JOIN J2_TBL USING (i); ! xxx | i | j | t | k ! -----+---+---+-------+---- ! | 0 | | zero | ! | 1 | 4 | one | -1 ! | 2 | 3 | two | 2 ! | 2 | 3 | two | 4 ! | 3 | 2 | three | -3 ! | 4 | 1 | four | ! | 5 | 0 | five | -5 ! | 5 | 0 | five | -5 ! | | | | ! | | | | 0 ! | 6 | 6 | six | ! | 7 | 7 | seven | ! | 8 | 8 | eight | ! | | | null | ! | | 0 | zero | ! (15 rows) ! SELECT '' AS "xxx", * FROM J1_TBL LEFT JOIN J2_TBL USING (i) WHERE (k = 1); xxx | i | j | t | k --- 1773,1795 ---- FROM J1_TBL RIGHT JOIN J2_TBL USING (i); xxx | i | j | t | k -----+---+---+-------+---- | 1 | 4 | one | -1 | 2 | 3 | two | 2 | 3 | 2 | three | -3 + | 2 | 3 | two | 4 | 5 | 0 | five | -5 | 5 | 0 | five | -5 + | 0 | | zero | | | | | | | | | 0 (9 rows) SELECT '' AS "xxx", * FROM J1_TBL FULL OUTER JOIN J2_TBL USING (i); ! ERROR: Unable to devise a query plan for the given query SELECT '' AS "xxx", * FROM J1_TBL FULL JOIN J2_TBL USING (i); ! ERROR: Unable to devise a query plan for the given query SELECT '' AS "xxx", * FROM J1_TBL LEFT JOIN J2_TBL USING (i) WHERE (k = 1); xxx | i | j | t | k ======================================================================