create schema join_without_on;
set current_schema to 'join_without_on';
CREATE TABLE J1_TBL (
i integer,
j integer,
t text
);
CREATE TABLE J2_TBL (
i integer,
k integer
);
CREATE TABLE J3_TBL (
i integer,
k integer
);
CREATE TABLE J4_TBL (
i integer,
k integer
);
INSERT INTO J1_TBL VALUES (1, 4, 'one');
INSERT INTO J1_TBL VALUES (2, 3, 'two');;
INSERT INTO J1_TBL VALUES (0, NULL, 'zero');
INSERT INTO J2_TBL VALUES (1, -1);
INSERT INTO J2_TBL VALUES (NULL, 0);
INSERT INTO J3_TBL VALUES (1, -1);
INSERT INTO J3_TBL VALUES (2, 2);
INSERT INTO J4_TBL VALUES (1, -1);
INSERT INTO J4_TBL VALUES (NULL, 0);
SELECT '' AS "xxx", *
FROM J1_TBL JOIN J2_TBL;
SELECT '' AS "xxx", *
FROM J1_TBL INNER JOIN J2_TBL;
SELECT '' AS "xxx", *
FROM J1_TBL JOIN J2_TBL JOIN J3_TBL;
SELECT '' AS "xxx", *
FROM J1_TBL INNER JOIN J2_TBL INNER JOIN J3_TBL;
SELECT * FROM J1_TBL JOIN (J2_TBL JOIN J3_TBL) ON J1_TBL.i = J2_TBL.i;
SELECT * FROM J1_TBL INNER JOIN J2_TBL JOIN J3_TBL ON J2_TBL.i = J3_TBL.i;
SELECT * FROM J1_TBL JOIN J2_TBL JOIN J3_TBL ON J1_TBL.i = J3_TBL.i;
SELECT * FROM J1_TBL JOIN J2_TBL JOIN J3_TBL JOIN J4_TBL ON J1_TBL.i = J4_TBL.i;
SELECT * FROM J1_TBL JOIN J2_TBL INNER JOIN J3_TBL INNER JOIN J4_TBL ON J1_TBL.i = J4_TBL.i;
drop schema join_without_on cascade;
reset current_schema;