xref: /sqlite-3.40.0/test/joinB.test (revision de75638b)
1*de75638bSdrhset testdir [file dirname $argv0]
2*de75638bSdrh# 2022-04-19
3*de75638bSdrh#
4*de75638bSdrh# The author disclaims copyright to this source code.  In place of
5*de75638bSdrh# a legal notice, here is a blessing:
6*de75638bSdrh#
7*de75638bSdrh#    May you do good and not evil.
8*de75638bSdrh#    May you find forgiveness for yourself and forgive others.
9*de75638bSdrh#    May you share freely, never taking more than you give.
10*de75638bSdrh#
11*de75638bSdrh#***********************************************************************
12*de75638bSdrh#
13*de75638bSdrh# This file implements tests for JOINs.
14*de75638bSdrh#
15*de75638bSdrh# The test case output is all generated by PostgreSQL 14.  This test module
16*de75638bSdrh# was created as follows:
17*de75638bSdrh#
18*de75638bSdrh#   1.   Run a TCL script (included at the bottom of this file) that
19*de75638bSdrh#        generates an input script for "psql" that will run man
20*de75638bSdrh#        diverse tests on joins.
21*de75638bSdrh#
22*de75638bSdrh#   2.   Run the script from step (1) through psql and collect the
23*de75638bSdrh#        output.
24*de75638bSdrh#
25*de75638bSdrh#   3.   Make a few minor global search-and-replace operations to convert
26*de75638bSdrh#        the psql output into a form suitable for this test module.
27*de75638bSdrh#
28*de75638bSdrh#   4.   Add this header, and the script content at the footer.
29*de75638bSdrh#
30*de75638bSdrhsource $testdir/tester.tcl
31*de75638bSdrhdb nullvalue -
32*de75638bSdrhdb eval {
33*de75638bSdrh  DROP TABLE IF EXISTS t1;
34*de75638bSdrh  DROP TABLE IF EXISTS t2;
35*de75638bSdrh  DROP TABLE IF EXISTS t3;
36*de75638bSdrh  DROP TABLE IF EXISTS t4;
37*de75638bSdrh  DROP TABLE IF EXISTS t5;
38*de75638bSdrh  CREATE TABLE t1(a INT, b INT, c INT);
39*de75638bSdrh  CREATE TABLE t2(a INT, b INT, d INT);
40*de75638bSdrh  CREATE TABLE t3(a INT, b INT, e INT);
41*de75638bSdrh  CREATE TABLE t4(a INT, b INT, f INT);
42*de75638bSdrh  CREATE TABLE t5(a INT, b INT, g INT);
43*de75638bSdrh  INSERT INTO t1 VALUES(11,21,31),(12,22,32),(15,25,35),(17,27,37);
44*de75638bSdrh  INSERT INTO t2 VALUES(12,22,32),(13,23,33),(15,25,35),(18,28,38),
45*de75638bSdrh                       (NULL,NULL,36);
46*de75638bSdrh  INSERT INTO t4 VALUES(11,21,31),(13,23,33),(15,25,35),(19,29,39);
47*de75638bSdrh  INSERT INTO t3 SELECT * FROM t1 UNION SELECT * FROM t2 UNION SELECT * FROM t4;
48*de75638bSdrh  INSERT INTO t5 SELECT * FROM t3 WHERE a>=15;
49*de75638bSdrh}
50*de75638bSdrhdo_execsql_test joinB-1 {
51*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
52*de75638bSdrh  FROM t1
53*de75638bSdrh  INNER JOIN t2 USING(a)
54*de75638bSdrh  INNER JOIN t3 USING(a)
55*de75638bSdrh  INNER JOIN t4 USING(a)
56*de75638bSdrh  INNER JOIN t5 USING(a)
57*de75638bSdrh  ORDER BY 1 NULLS FIRST;
58*de75638bSdrh} {
59*de75638bSdrh  15 15 15 15 15 15
60*de75638bSdrh}
61*de75638bSdrhdo_execsql_test joinB-2 {
62*de75638bSdrh  SELECT a, c, d, e, f, g
63*de75638bSdrh  FROM t1
64*de75638bSdrh  INNER JOIN t2 USING(a,b)
65*de75638bSdrh  INNER JOIN t3 USING(a,b)
66*de75638bSdrh  INNER JOIN t4 USING(a,b)
67*de75638bSdrh  INNER JOIN t5 USING(a,b)
68*de75638bSdrh  WHERE a<>13
69*de75638bSdrh  ORDER BY 1 NULLS FIRST;
70*de75638bSdrh} {
71*de75638bSdrh  15 35 35 35 35 35
72*de75638bSdrh}
73*de75638bSdrhdo_execsql_test joinB-3 {
74*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
75*de75638bSdrh  FROM t1
76*de75638bSdrh  INNER JOIN t2 USING(a)
77*de75638bSdrh  INNER JOIN t3 USING(a)
78*de75638bSdrh  INNER JOIN t4 USING(a)
79*de75638bSdrh  LEFT JOIN t5 USING(a)
80*de75638bSdrh  ORDER BY 1 NULLS FIRST;
81*de75638bSdrh} {
82*de75638bSdrh  15 15 15 15 15 15
83*de75638bSdrh}
84*de75638bSdrhdo_execsql_test joinB-4 {
85*de75638bSdrh  SELECT a, c, d, e, f, g
86*de75638bSdrh  FROM t1
87*de75638bSdrh  INNER JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
88*de75638bSdrh  INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
89*de75638bSdrh  WHERE a<=18
90*de75638bSdrh  ORDER BY 1 NULLS FIRST;
91*de75638bSdrh} {
92*de75638bSdrh  15 35 35 35 35 35
93*de75638bSdrh}
94*de75638bSdrhdo_execsql_test joinB-5 {
95*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
96*de75638bSdrh  FROM t1
97*de75638bSdrh  INNER JOIN t2 USING(a)
98*de75638bSdrh  INNER JOIN t3 USING(a)
99*de75638bSdrh  INNER JOIN t4 USING(a)
100*de75638bSdrh  RIGHT JOIN t5 USING(a)
101*de75638bSdrh  ORDER BY 1 NULLS FIRST;
102*de75638bSdrh} {
103*de75638bSdrh  15 15 15 15 15 15
104*de75638bSdrh  17  -  -  -  - 17
105*de75638bSdrh  18  -  -  -  - 18
106*de75638bSdrh  19  -  -  -  - 19
107*de75638bSdrh}
108*de75638bSdrhdo_execsql_test joinB-6 {
109*de75638bSdrh  SELECT a, b, c, d, e, f, g
110*de75638bSdrh  FROM t1
111*de75638bSdrh  INNER JOIN t2 USING(a,b)
112*de75638bSdrh  INNER JOIN t3 USING(a,b)
113*de75638bSdrh  INNER JOIN t4 USING(a,b)
114*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
115*de75638bSdrh  WHERE d<>33 OR d IS NULL
116*de75638bSdrh  ORDER BY 1 NULLS FIRST;
117*de75638bSdrh} {
118*de75638bSdrh  15 25 35 35 35 35 35
119*de75638bSdrh  17 27  -  -  -  - 37
120*de75638bSdrh  18 28  -  -  -  - 38
121*de75638bSdrh  19 29  -  -  -  - 39
122*de75638bSdrh}
123*de75638bSdrhdo_execsql_test joinB-7 {
124*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
125*de75638bSdrh  FROM t1
126*de75638bSdrh  INNER JOIN t2 USING(a)
127*de75638bSdrh  INNER JOIN t3 USING(a)
128*de75638bSdrh  INNER JOIN t4 USING(a)
129*de75638bSdrh  FULL JOIN t5 USING(a)
130*de75638bSdrh  ORDER BY 1 NULLS FIRST;
131*de75638bSdrh} {
132*de75638bSdrh  15 15 15 15 15 15
133*de75638bSdrh  17  -  -  -  - 17
134*de75638bSdrh  18  -  -  -  - 18
135*de75638bSdrh  19  -  -  -  - 19
136*de75638bSdrh}
137*de75638bSdrhdo_execsql_test joinB-8 {
138*de75638bSdrh  SELECT b, c, d, e, f, g
139*de75638bSdrh  FROM t1
140*de75638bSdrh  NATURAL INNER JOIN t2
141*de75638bSdrh  NATURAL INNER JOIN t3
142*de75638bSdrh  NATURAL INNER JOIN t4
143*de75638bSdrh  NATURAL FULL JOIN t5
144*de75638bSdrh  WHERE b BETWEEN 12 AND 17
145*de75638bSdrh  ORDER BY 1 NULLS FIRST;
146*de75638bSdrh} {
147*de75638bSdrh}
148*de75638bSdrhdo_execsql_test joinB-9 {
149*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
150*de75638bSdrh  FROM t1
151*de75638bSdrh  INNER JOIN t2 USING(a)
152*de75638bSdrh  INNER JOIN t3 USING(a)
153*de75638bSdrh  LEFT JOIN t4 USING(a)
154*de75638bSdrh  INNER JOIN t5 USING(a)
155*de75638bSdrh  ORDER BY 1 NULLS FIRST;
156*de75638bSdrh} {
157*de75638bSdrh  15 15 15 15 15 15
158*de75638bSdrh}
159*de75638bSdrhdo_execsql_test joinB-10 {
160*de75638bSdrh  SELECT a, c, d, e, f, g
161*de75638bSdrh  FROM t1
162*de75638bSdrh  INNER JOIN t2 USING(a,b)
163*de75638bSdrh  INNER JOIN t3 USING(a,b)
164*de75638bSdrh  LEFT JOIN t4 USING(a,b)
165*de75638bSdrh  INNER JOIN t5 USING(a,b)
166*de75638bSdrh  WHERE a<>13
167*de75638bSdrh  ORDER BY 1 NULLS FIRST;
168*de75638bSdrh} {
169*de75638bSdrh  15 35 35 35 35 35
170*de75638bSdrh}
171*de75638bSdrhdo_execsql_test joinB-11 {
172*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
173*de75638bSdrh  FROM t1
174*de75638bSdrh  INNER JOIN t2 USING(a)
175*de75638bSdrh  INNER JOIN t3 USING(a)
176*de75638bSdrh  LEFT JOIN t4 USING(a)
177*de75638bSdrh  LEFT JOIN t5 USING(a)
178*de75638bSdrh  ORDER BY 1 NULLS FIRST;
179*de75638bSdrh} {
180*de75638bSdrh  12 12 12 12  -  -
181*de75638bSdrh  15 15 15 15 15 15
182*de75638bSdrh}
183*de75638bSdrhdo_execsql_test joinB-12 {
184*de75638bSdrh  SELECT a, c, d, e, f, g
185*de75638bSdrh  FROM t1
186*de75638bSdrh  INNER JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
187*de75638bSdrh  LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
188*de75638bSdrh  WHERE a<=18
189*de75638bSdrh  ORDER BY 1 NULLS FIRST;
190*de75638bSdrh} {
191*de75638bSdrh  12 32 32 32  -  -
192*de75638bSdrh  15 35 35 35 35 35
193*de75638bSdrh}
194*de75638bSdrhdo_execsql_test joinB-13 {
195*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
196*de75638bSdrh  FROM t1
197*de75638bSdrh  INNER JOIN t2 USING(a)
198*de75638bSdrh  INNER JOIN t3 USING(a)
199*de75638bSdrh  LEFT JOIN t4 USING(a)
200*de75638bSdrh  RIGHT JOIN t5 USING(a)
201*de75638bSdrh  ORDER BY 1 NULLS FIRST;
202*de75638bSdrh} {
203*de75638bSdrh  15 15 15 15 15 15
204*de75638bSdrh  17  -  -  -  - 17
205*de75638bSdrh  18  -  -  -  - 18
206*de75638bSdrh  19  -  -  -  - 19
207*de75638bSdrh}
208*de75638bSdrhdo_execsql_test joinB-14 {
209*de75638bSdrh  SELECT a, b, c, d, e, f, g
210*de75638bSdrh  FROM t1
211*de75638bSdrh  INNER JOIN t2 USING(a,b)
212*de75638bSdrh  INNER JOIN t3 USING(a,b)
213*de75638bSdrh  LEFT JOIN t4 USING(a,b)
214*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
215*de75638bSdrh  WHERE d<>33 OR d IS NULL
216*de75638bSdrh  ORDER BY 1 NULLS FIRST;
217*de75638bSdrh} {
218*de75638bSdrh  15 25 35 35 35 35 35
219*de75638bSdrh  17 27  -  -  -  - 37
220*de75638bSdrh  18 28  -  -  -  - 38
221*de75638bSdrh  19 29  -  -  -  - 39
222*de75638bSdrh}
223*de75638bSdrhdo_execsql_test joinB-15 {
224*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
225*de75638bSdrh  FROM t1
226*de75638bSdrh  INNER JOIN t2 USING(a)
227*de75638bSdrh  INNER JOIN t3 USING(a)
228*de75638bSdrh  LEFT JOIN t4 USING(a)
229*de75638bSdrh  FULL JOIN t5 USING(a)
230*de75638bSdrh  ORDER BY 1 NULLS FIRST;
231*de75638bSdrh} {
232*de75638bSdrh  12 12 12 12  -  -
233*de75638bSdrh  15 15 15 15 15 15
234*de75638bSdrh  17  -  -  -  - 17
235*de75638bSdrh  18  -  -  -  - 18
236*de75638bSdrh  19  -  -  -  - 19
237*de75638bSdrh}
238*de75638bSdrhdo_execsql_test joinB-16 {
239*de75638bSdrh  SELECT b, c, d, e, f, g
240*de75638bSdrh  FROM t1
241*de75638bSdrh  NATURAL INNER JOIN t2
242*de75638bSdrh  NATURAL INNER JOIN t3
243*de75638bSdrh  NATURAL LEFT JOIN t4
244*de75638bSdrh  NATURAL FULL JOIN t5
245*de75638bSdrh  WHERE b BETWEEN 12 AND 17
246*de75638bSdrh  ORDER BY 1 NULLS FIRST;
247*de75638bSdrh} {
248*de75638bSdrh}
249*de75638bSdrhdo_execsql_test joinB-17 {
250*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
251*de75638bSdrh  FROM t1
252*de75638bSdrh  INNER JOIN t2 USING(a)
253*de75638bSdrh  INNER JOIN t3 USING(a)
254*de75638bSdrh  RIGHT JOIN t4 USING(a)
255*de75638bSdrh  INNER JOIN t5 USING(a)
256*de75638bSdrh  ORDER BY 1 NULLS FIRST;
257*de75638bSdrh} {
258*de75638bSdrh  15 15 15 15 15 15
259*de75638bSdrh  19  -  -  - 19 19
260*de75638bSdrh}
261*de75638bSdrhdo_execsql_test joinB-18 {
262*de75638bSdrh  SELECT a, c, d, e, f, g
263*de75638bSdrh  FROM t1
264*de75638bSdrh  INNER JOIN t2 USING(a,b)
265*de75638bSdrh  INNER JOIN t3 USING(a,b)
266*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
267*de75638bSdrh  INNER JOIN t5 USING(a,b)
268*de75638bSdrh  WHERE a<>13
269*de75638bSdrh  ORDER BY 1 NULLS FIRST;
270*de75638bSdrh} {
271*de75638bSdrh  15 35 35 35 35 35
272*de75638bSdrh  19  -  -  - 39 39
273*de75638bSdrh}
274*de75638bSdrhdo_execsql_test joinB-19 {
275*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
276*de75638bSdrh  FROM t1
277*de75638bSdrh  INNER JOIN t2 USING(a)
278*de75638bSdrh  INNER JOIN t3 USING(a)
279*de75638bSdrh  RIGHT JOIN t4 USING(a)
280*de75638bSdrh  LEFT JOIN t5 USING(a)
281*de75638bSdrh  ORDER BY 1 NULLS FIRST;
282*de75638bSdrh} {
283*de75638bSdrh  11  -  -  - 11  -
284*de75638bSdrh  13  -  -  - 13  -
285*de75638bSdrh  15 15 15 15 15 15
286*de75638bSdrh  19  -  -  - 19 19
287*de75638bSdrh}
288*de75638bSdrhdo_execsql_test joinB-20 {
289*de75638bSdrh  SELECT a, c, d, e, f, g
290*de75638bSdrh  FROM t1
291*de75638bSdrh  INNER JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
292*de75638bSdrh  RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
293*de75638bSdrh  WHERE a<=18
294*de75638bSdrh  ORDER BY 1 NULLS FIRST;
295*de75638bSdrh} {
296*de75638bSdrh  11  -  -  - 31  -
297*de75638bSdrh  13  -  -  - 33  -
298*de75638bSdrh  15 35 35 35 35 35
299*de75638bSdrh}
300*de75638bSdrhdo_execsql_test joinB-21 {
301*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
302*de75638bSdrh  FROM t1
303*de75638bSdrh  INNER JOIN t2 USING(a)
304*de75638bSdrh  INNER JOIN t3 USING(a)
305*de75638bSdrh  RIGHT JOIN t4 USING(a)
306*de75638bSdrh  RIGHT JOIN t5 USING(a)
307*de75638bSdrh  ORDER BY 1 NULLS FIRST;
308*de75638bSdrh} {
309*de75638bSdrh  15 15 15 15 15 15
310*de75638bSdrh  17  -  -  -  - 17
311*de75638bSdrh  18  -  -  -  - 18
312*de75638bSdrh  19  -  -  - 19 19
313*de75638bSdrh}
314*de75638bSdrhdo_execsql_test joinB-22 {
315*de75638bSdrh  SELECT a, b, c, d, e, f, g
316*de75638bSdrh  FROM t1
317*de75638bSdrh  INNER JOIN t2 USING(a,b)
318*de75638bSdrh  INNER JOIN t3 USING(a,b)
319*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
320*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
321*de75638bSdrh  WHERE d<>33 OR d IS NULL
322*de75638bSdrh  ORDER BY 1 NULLS FIRST;
323*de75638bSdrh} {
324*de75638bSdrh  15 25 35 35 35 35 35
325*de75638bSdrh  17 27  -  -  -  - 37
326*de75638bSdrh  18 28  -  -  -  - 38
327*de75638bSdrh  19 29  -  -  - 39 39
328*de75638bSdrh}
329*de75638bSdrhdo_execsql_test joinB-23 {
330*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
331*de75638bSdrh  FROM t1
332*de75638bSdrh  INNER JOIN t2 USING(a)
333*de75638bSdrh  INNER JOIN t3 USING(a)
334*de75638bSdrh  RIGHT JOIN t4 USING(a)
335*de75638bSdrh  FULL JOIN t5 USING(a)
336*de75638bSdrh  ORDER BY 1 NULLS FIRST;
337*de75638bSdrh} {
338*de75638bSdrh  11  -  -  - 11  -
339*de75638bSdrh  13  -  -  - 13  -
340*de75638bSdrh  15 15 15 15 15 15
341*de75638bSdrh  17  -  -  -  - 17
342*de75638bSdrh  18  -  -  -  - 18
343*de75638bSdrh  19  -  -  - 19 19
344*de75638bSdrh}
345*de75638bSdrhdo_execsql_test joinB-24 {
346*de75638bSdrh  SELECT b, c, d, e, f, g
347*de75638bSdrh  FROM t1
348*de75638bSdrh  NATURAL INNER JOIN t2
349*de75638bSdrh  NATURAL INNER JOIN t3
350*de75638bSdrh  NATURAL RIGHT JOIN t4
351*de75638bSdrh  NATURAL FULL JOIN t5
352*de75638bSdrh  WHERE b BETWEEN 12 AND 17
353*de75638bSdrh  ORDER BY 1 NULLS FIRST;
354*de75638bSdrh} {
355*de75638bSdrh}
356*de75638bSdrhdo_execsql_test joinB-25 {
357*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
358*de75638bSdrh  FROM t1
359*de75638bSdrh  INNER JOIN t2 USING(a)
360*de75638bSdrh  INNER JOIN t3 USING(a)
361*de75638bSdrh  FULL JOIN t4 USING(a)
362*de75638bSdrh  INNER JOIN t5 USING(a)
363*de75638bSdrh  ORDER BY 1 NULLS FIRST;
364*de75638bSdrh} {
365*de75638bSdrh  15 15 15 15 15 15
366*de75638bSdrh  19  -  -  - 19 19
367*de75638bSdrh}
368*de75638bSdrhdo_execsql_test joinB-26 {
369*de75638bSdrh  SELECT a, c, d, e, f, g
370*de75638bSdrh  FROM t1
371*de75638bSdrh  INNER JOIN t2 USING(a,b)
372*de75638bSdrh  INNER JOIN t3 USING(a,b)
373*de75638bSdrh  FULL JOIN t4 USING(a,b)
374*de75638bSdrh  INNER JOIN t5 USING(a,b)
375*de75638bSdrh  WHERE a<>13
376*de75638bSdrh  ORDER BY 1 NULLS FIRST;
377*de75638bSdrh} {
378*de75638bSdrh  15 35 35 35 35 35
379*de75638bSdrh  19  -  -  - 39 39
380*de75638bSdrh}
381*de75638bSdrhdo_execsql_test joinB-27 {
382*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
383*de75638bSdrh  FROM t1
384*de75638bSdrh  INNER JOIN t2 USING(a)
385*de75638bSdrh  INNER JOIN t3 USING(a)
386*de75638bSdrh  FULL JOIN t4 USING(a)
387*de75638bSdrh  LEFT JOIN t5 USING(a)
388*de75638bSdrh  ORDER BY 1 NULLS FIRST;
389*de75638bSdrh} {
390*de75638bSdrh  11  -  -  - 11  -
391*de75638bSdrh  12 12 12 12  -  -
392*de75638bSdrh  13  -  -  - 13  -
393*de75638bSdrh  15 15 15 15 15 15
394*de75638bSdrh  19  -  -  - 19 19
395*de75638bSdrh}
396*de75638bSdrhdo_execsql_test joinB-28 {
397*de75638bSdrh  SELECT a, c, d, e, f, g
398*de75638bSdrh  FROM t1
399*de75638bSdrh  INNER JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
400*de75638bSdrh  FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
401*de75638bSdrh  WHERE a<=18
402*de75638bSdrh  ORDER BY 1 NULLS FIRST;
403*de75638bSdrh} {
404*de75638bSdrh  11  -  -  - 31  -
405*de75638bSdrh  12 32 32 32  -  -
406*de75638bSdrh  13  -  -  - 33  -
407*de75638bSdrh  15 35 35 35 35 35
408*de75638bSdrh}
409*de75638bSdrhdo_execsql_test joinB-29 {
410*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
411*de75638bSdrh  FROM t1
412*de75638bSdrh  INNER JOIN t2 USING(a)
413*de75638bSdrh  INNER JOIN t3 USING(a)
414*de75638bSdrh  FULL JOIN t4 USING(a)
415*de75638bSdrh  RIGHT JOIN t5 USING(a)
416*de75638bSdrh  ORDER BY 1 NULLS FIRST;
417*de75638bSdrh} {
418*de75638bSdrh  15 15 15 15 15 15
419*de75638bSdrh  17  -  -  -  - 17
420*de75638bSdrh  18  -  -  -  - 18
421*de75638bSdrh  19  -  -  - 19 19
422*de75638bSdrh}
423*de75638bSdrhdo_execsql_test joinB-30 {
424*de75638bSdrh  SELECT a, b, c, d, e, f, g
425*de75638bSdrh  FROM t1
426*de75638bSdrh  INNER JOIN t2 USING(a,b)
427*de75638bSdrh  INNER JOIN t3 USING(a,b)
428*de75638bSdrh  FULL JOIN t4 USING(a,b)
429*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
430*de75638bSdrh  WHERE d<>33 OR d IS NULL
431*de75638bSdrh  ORDER BY 1 NULLS FIRST;
432*de75638bSdrh} {
433*de75638bSdrh  15 25 35 35 35 35 35
434*de75638bSdrh  17 27  -  -  -  - 37
435*de75638bSdrh  18 28  -  -  -  - 38
436*de75638bSdrh  19 29  -  -  - 39 39
437*de75638bSdrh}
438*de75638bSdrhdo_execsql_test joinB-31 {
439*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
440*de75638bSdrh  FROM t1
441*de75638bSdrh  INNER JOIN t2 USING(a)
442*de75638bSdrh  INNER JOIN t3 USING(a)
443*de75638bSdrh  FULL JOIN t4 USING(a)
444*de75638bSdrh  FULL JOIN t5 USING(a)
445*de75638bSdrh  ORDER BY 1 NULLS FIRST;
446*de75638bSdrh} {
447*de75638bSdrh  11  -  -  - 11  -
448*de75638bSdrh  12 12 12 12  -  -
449*de75638bSdrh  13  -  -  - 13  -
450*de75638bSdrh  15 15 15 15 15 15
451*de75638bSdrh  17  -  -  -  - 17
452*de75638bSdrh  18  -  -  -  - 18
453*de75638bSdrh  19  -  -  - 19 19
454*de75638bSdrh}
455*de75638bSdrhdo_execsql_test joinB-32 {
456*de75638bSdrh  SELECT b, c, d, e, f, g
457*de75638bSdrh  FROM t1
458*de75638bSdrh  NATURAL INNER JOIN t2
459*de75638bSdrh  NATURAL INNER JOIN t3
460*de75638bSdrh  NATURAL FULL JOIN t4
461*de75638bSdrh  NATURAL FULL JOIN t5
462*de75638bSdrh  WHERE b BETWEEN 12 AND 17
463*de75638bSdrh  ORDER BY 1 NULLS FIRST;
464*de75638bSdrh} {
465*de75638bSdrh}
466*de75638bSdrhdo_execsql_test joinB-33 {
467*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
468*de75638bSdrh  FROM t1
469*de75638bSdrh  INNER JOIN t2 USING(a)
470*de75638bSdrh  LEFT JOIN t3 USING(a)
471*de75638bSdrh  INNER JOIN t4 USING(a)
472*de75638bSdrh  INNER JOIN t5 USING(a)
473*de75638bSdrh  ORDER BY 1 NULLS FIRST;
474*de75638bSdrh} {
475*de75638bSdrh  15 15 15 15 15 15
476*de75638bSdrh}
477*de75638bSdrhdo_execsql_test joinB-34 {
478*de75638bSdrh  SELECT a, c, d, e, f, g
479*de75638bSdrh  FROM t1
480*de75638bSdrh  INNER JOIN t2 USING(a,b)
481*de75638bSdrh  LEFT JOIN t3 USING(a,b)
482*de75638bSdrh  INNER JOIN t4 USING(a,b)
483*de75638bSdrh  INNER JOIN t5 USING(a,b)
484*de75638bSdrh  WHERE a<>13
485*de75638bSdrh  ORDER BY 1 NULLS FIRST;
486*de75638bSdrh} {
487*de75638bSdrh  15 35 35 35 35 35
488*de75638bSdrh}
489*de75638bSdrhdo_execsql_test joinB-35 {
490*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
491*de75638bSdrh  FROM t1
492*de75638bSdrh  INNER JOIN t2 USING(a)
493*de75638bSdrh  LEFT JOIN t3 USING(a)
494*de75638bSdrh  INNER JOIN t4 USING(a)
495*de75638bSdrh  LEFT JOIN t5 USING(a)
496*de75638bSdrh  ORDER BY 1 NULLS FIRST;
497*de75638bSdrh} {
498*de75638bSdrh  15 15 15 15 15 15
499*de75638bSdrh}
500*de75638bSdrhdo_execsql_test joinB-36 {
501*de75638bSdrh  SELECT a, c, d, e, f, g
502*de75638bSdrh  FROM t1
503*de75638bSdrh  INNER JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
504*de75638bSdrh  INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
505*de75638bSdrh  WHERE a<=18
506*de75638bSdrh  ORDER BY 1 NULLS FIRST;
507*de75638bSdrh} {
508*de75638bSdrh  15 35 35 35 35 35
509*de75638bSdrh}
510*de75638bSdrhdo_execsql_test joinB-37 {
511*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
512*de75638bSdrh  FROM t1
513*de75638bSdrh  INNER JOIN t2 USING(a)
514*de75638bSdrh  LEFT JOIN t3 USING(a)
515*de75638bSdrh  INNER JOIN t4 USING(a)
516*de75638bSdrh  RIGHT JOIN t5 USING(a)
517*de75638bSdrh  ORDER BY 1 NULLS FIRST;
518*de75638bSdrh} {
519*de75638bSdrh  15 15 15 15 15 15
520*de75638bSdrh  17  -  -  -  - 17
521*de75638bSdrh  18  -  -  -  - 18
522*de75638bSdrh  19  -  -  -  - 19
523*de75638bSdrh}
524*de75638bSdrhdo_execsql_test joinB-38 {
525*de75638bSdrh  SELECT a, b, c, d, e, f, g
526*de75638bSdrh  FROM t1
527*de75638bSdrh  INNER JOIN t2 USING(a,b)
528*de75638bSdrh  LEFT JOIN t3 USING(a,b)
529*de75638bSdrh  INNER JOIN t4 USING(a,b)
530*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
531*de75638bSdrh  WHERE d<>33 OR d IS NULL
532*de75638bSdrh  ORDER BY 1 NULLS FIRST;
533*de75638bSdrh} {
534*de75638bSdrh  15 25 35 35 35 35 35
535*de75638bSdrh  17 27  -  -  -  - 37
536*de75638bSdrh  18 28  -  -  -  - 38
537*de75638bSdrh  19 29  -  -  -  - 39
538*de75638bSdrh}
539*de75638bSdrhdo_execsql_test joinB-39 {
540*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
541*de75638bSdrh  FROM t1
542*de75638bSdrh  INNER JOIN t2 USING(a)
543*de75638bSdrh  LEFT JOIN t3 USING(a)
544*de75638bSdrh  INNER JOIN t4 USING(a)
545*de75638bSdrh  FULL JOIN t5 USING(a)
546*de75638bSdrh  ORDER BY 1 NULLS FIRST;
547*de75638bSdrh} {
548*de75638bSdrh  15 15 15 15 15 15
549*de75638bSdrh  17  -  -  -  - 17
550*de75638bSdrh  18  -  -  -  - 18
551*de75638bSdrh  19  -  -  -  - 19
552*de75638bSdrh}
553*de75638bSdrhdo_execsql_test joinB-40 {
554*de75638bSdrh  SELECT b, c, d, e, f, g
555*de75638bSdrh  FROM t1
556*de75638bSdrh  NATURAL INNER JOIN t2
557*de75638bSdrh  NATURAL LEFT JOIN t3
558*de75638bSdrh  NATURAL INNER JOIN t4
559*de75638bSdrh  NATURAL FULL JOIN t5
560*de75638bSdrh  WHERE b BETWEEN 12 AND 17
561*de75638bSdrh  ORDER BY 1 NULLS FIRST;
562*de75638bSdrh} {
563*de75638bSdrh}
564*de75638bSdrhdo_execsql_test joinB-41 {
565*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
566*de75638bSdrh  FROM t1
567*de75638bSdrh  INNER JOIN t2 USING(a)
568*de75638bSdrh  LEFT JOIN t3 USING(a)
569*de75638bSdrh  LEFT JOIN t4 USING(a)
570*de75638bSdrh  INNER JOIN t5 USING(a)
571*de75638bSdrh  ORDER BY 1 NULLS FIRST;
572*de75638bSdrh} {
573*de75638bSdrh  15 15 15 15 15 15
574*de75638bSdrh}
575*de75638bSdrhdo_execsql_test joinB-42 {
576*de75638bSdrh  SELECT a, c, d, e, f, g
577*de75638bSdrh  FROM t1
578*de75638bSdrh  INNER JOIN t2 USING(a,b)
579*de75638bSdrh  LEFT JOIN t3 USING(a,b)
580*de75638bSdrh  LEFT JOIN t4 USING(a,b)
581*de75638bSdrh  INNER JOIN t5 USING(a,b)
582*de75638bSdrh  WHERE a<>13
583*de75638bSdrh  ORDER BY 1 NULLS FIRST;
584*de75638bSdrh} {
585*de75638bSdrh  15 35 35 35 35 35
586*de75638bSdrh}
587*de75638bSdrhdo_execsql_test joinB-43 {
588*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
589*de75638bSdrh  FROM t1
590*de75638bSdrh  INNER JOIN t2 USING(a)
591*de75638bSdrh  LEFT JOIN t3 USING(a)
592*de75638bSdrh  LEFT JOIN t4 USING(a)
593*de75638bSdrh  LEFT JOIN t5 USING(a)
594*de75638bSdrh  ORDER BY 1 NULLS FIRST;
595*de75638bSdrh} {
596*de75638bSdrh  12 12 12 12  -  -
597*de75638bSdrh  15 15 15 15 15 15
598*de75638bSdrh}
599*de75638bSdrhdo_execsql_test joinB-44 {
600*de75638bSdrh  SELECT a, c, d, e, f, g
601*de75638bSdrh  FROM t1
602*de75638bSdrh  INNER JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
603*de75638bSdrh  LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
604*de75638bSdrh  WHERE a<=18
605*de75638bSdrh  ORDER BY 1 NULLS FIRST;
606*de75638bSdrh} {
607*de75638bSdrh  12 32 32 32  -  -
608*de75638bSdrh  15 35 35 35 35 35
609*de75638bSdrh}
610*de75638bSdrhdo_execsql_test joinB-45 {
611*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
612*de75638bSdrh  FROM t1
613*de75638bSdrh  INNER JOIN t2 USING(a)
614*de75638bSdrh  LEFT JOIN t3 USING(a)
615*de75638bSdrh  LEFT JOIN t4 USING(a)
616*de75638bSdrh  RIGHT JOIN t5 USING(a)
617*de75638bSdrh  ORDER BY 1 NULLS FIRST;
618*de75638bSdrh} {
619*de75638bSdrh  15 15 15 15 15 15
620*de75638bSdrh  17  -  -  -  - 17
621*de75638bSdrh  18  -  -  -  - 18
622*de75638bSdrh  19  -  -  -  - 19
623*de75638bSdrh}
624*de75638bSdrhdo_execsql_test joinB-46 {
625*de75638bSdrh  SELECT a, b, c, d, e, f, g
626*de75638bSdrh  FROM t1
627*de75638bSdrh  INNER JOIN t2 USING(a,b)
628*de75638bSdrh  LEFT JOIN t3 USING(a,b)
629*de75638bSdrh  LEFT JOIN t4 USING(a,b)
630*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
631*de75638bSdrh  WHERE d<>33 OR d IS NULL
632*de75638bSdrh  ORDER BY 1 NULLS FIRST;
633*de75638bSdrh} {
634*de75638bSdrh  15 25 35 35 35 35 35
635*de75638bSdrh  17 27  -  -  -  - 37
636*de75638bSdrh  18 28  -  -  -  - 38
637*de75638bSdrh  19 29  -  -  -  - 39
638*de75638bSdrh}
639*de75638bSdrhdo_execsql_test joinB-47 {
640*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
641*de75638bSdrh  FROM t1
642*de75638bSdrh  INNER JOIN t2 USING(a)
643*de75638bSdrh  LEFT JOIN t3 USING(a)
644*de75638bSdrh  LEFT JOIN t4 USING(a)
645*de75638bSdrh  FULL JOIN t5 USING(a)
646*de75638bSdrh  ORDER BY 1 NULLS FIRST;
647*de75638bSdrh} {
648*de75638bSdrh  12 12 12 12  -  -
649*de75638bSdrh  15 15 15 15 15 15
650*de75638bSdrh  17  -  -  -  - 17
651*de75638bSdrh  18  -  -  -  - 18
652*de75638bSdrh  19  -  -  -  - 19
653*de75638bSdrh}
654*de75638bSdrhdo_execsql_test joinB-48 {
655*de75638bSdrh  SELECT b, c, d, e, f, g
656*de75638bSdrh  FROM t1
657*de75638bSdrh  NATURAL INNER JOIN t2
658*de75638bSdrh  NATURAL LEFT JOIN t3
659*de75638bSdrh  NATURAL LEFT JOIN t4
660*de75638bSdrh  NATURAL FULL JOIN t5
661*de75638bSdrh  WHERE b BETWEEN 12 AND 17
662*de75638bSdrh  ORDER BY 1 NULLS FIRST;
663*de75638bSdrh} {
664*de75638bSdrh}
665*de75638bSdrhdo_execsql_test joinB-49 {
666*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
667*de75638bSdrh  FROM t1
668*de75638bSdrh  INNER JOIN t2 USING(a)
669*de75638bSdrh  LEFT JOIN t3 USING(a)
670*de75638bSdrh  RIGHT JOIN t4 USING(a)
671*de75638bSdrh  INNER JOIN t5 USING(a)
672*de75638bSdrh  ORDER BY 1 NULLS FIRST;
673*de75638bSdrh} {
674*de75638bSdrh  15 15 15 15 15 15
675*de75638bSdrh  19  -  -  - 19 19
676*de75638bSdrh}
677*de75638bSdrhdo_execsql_test joinB-50 {
678*de75638bSdrh  SELECT a, c, d, e, f, g
679*de75638bSdrh  FROM t1
680*de75638bSdrh  INNER JOIN t2 USING(a,b)
681*de75638bSdrh  LEFT JOIN t3 USING(a,b)
682*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
683*de75638bSdrh  INNER JOIN t5 USING(a,b)
684*de75638bSdrh  WHERE a<>13
685*de75638bSdrh  ORDER BY 1 NULLS FIRST;
686*de75638bSdrh} {
687*de75638bSdrh  15 35 35 35 35 35
688*de75638bSdrh  19  -  -  - 39 39
689*de75638bSdrh}
690*de75638bSdrhdo_execsql_test joinB-51 {
691*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
692*de75638bSdrh  FROM t1
693*de75638bSdrh  INNER JOIN t2 USING(a)
694*de75638bSdrh  LEFT JOIN t3 USING(a)
695*de75638bSdrh  RIGHT JOIN t4 USING(a)
696*de75638bSdrh  LEFT JOIN t5 USING(a)
697*de75638bSdrh  ORDER BY 1 NULLS FIRST;
698*de75638bSdrh} {
699*de75638bSdrh  11  -  -  - 11  -
700*de75638bSdrh  13  -  -  - 13  -
701*de75638bSdrh  15 15 15 15 15 15
702*de75638bSdrh  19  -  -  - 19 19
703*de75638bSdrh}
704*de75638bSdrhdo_execsql_test joinB-52 {
705*de75638bSdrh  SELECT a, c, d, e, f, g
706*de75638bSdrh  FROM t1
707*de75638bSdrh  INNER JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
708*de75638bSdrh  RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
709*de75638bSdrh  WHERE a<=18
710*de75638bSdrh  ORDER BY 1 NULLS FIRST;
711*de75638bSdrh} {
712*de75638bSdrh  11  -  -  - 31  -
713*de75638bSdrh  13  -  -  - 33  -
714*de75638bSdrh  15 35 35 35 35 35
715*de75638bSdrh}
716*de75638bSdrhdo_execsql_test joinB-53 {
717*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
718*de75638bSdrh  FROM t1
719*de75638bSdrh  INNER JOIN t2 USING(a)
720*de75638bSdrh  LEFT JOIN t3 USING(a)
721*de75638bSdrh  RIGHT JOIN t4 USING(a)
722*de75638bSdrh  RIGHT JOIN t5 USING(a)
723*de75638bSdrh  ORDER BY 1 NULLS FIRST;
724*de75638bSdrh} {
725*de75638bSdrh  15 15 15 15 15 15
726*de75638bSdrh  17  -  -  -  - 17
727*de75638bSdrh  18  -  -  -  - 18
728*de75638bSdrh  19  -  -  - 19 19
729*de75638bSdrh}
730*de75638bSdrhdo_execsql_test joinB-54 {
731*de75638bSdrh  SELECT a, b, c, d, e, f, g
732*de75638bSdrh  FROM t1
733*de75638bSdrh  INNER JOIN t2 USING(a,b)
734*de75638bSdrh  LEFT JOIN t3 USING(a,b)
735*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
736*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
737*de75638bSdrh  WHERE d<>33 OR d IS NULL
738*de75638bSdrh  ORDER BY 1 NULLS FIRST;
739*de75638bSdrh} {
740*de75638bSdrh  15 25 35 35 35 35 35
741*de75638bSdrh  17 27  -  -  -  - 37
742*de75638bSdrh  18 28  -  -  -  - 38
743*de75638bSdrh  19 29  -  -  - 39 39
744*de75638bSdrh}
745*de75638bSdrhdo_execsql_test joinB-55 {
746*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
747*de75638bSdrh  FROM t1
748*de75638bSdrh  INNER JOIN t2 USING(a)
749*de75638bSdrh  LEFT JOIN t3 USING(a)
750*de75638bSdrh  RIGHT JOIN t4 USING(a)
751*de75638bSdrh  FULL JOIN t5 USING(a)
752*de75638bSdrh  ORDER BY 1 NULLS FIRST;
753*de75638bSdrh} {
754*de75638bSdrh  11  -  -  - 11  -
755*de75638bSdrh  13  -  -  - 13  -
756*de75638bSdrh  15 15 15 15 15 15
757*de75638bSdrh  17  -  -  -  - 17
758*de75638bSdrh  18  -  -  -  - 18
759*de75638bSdrh  19  -  -  - 19 19
760*de75638bSdrh}
761*de75638bSdrhdo_execsql_test joinB-56 {
762*de75638bSdrh  SELECT b, c, d, e, f, g
763*de75638bSdrh  FROM t1
764*de75638bSdrh  NATURAL INNER JOIN t2
765*de75638bSdrh  NATURAL LEFT JOIN t3
766*de75638bSdrh  NATURAL RIGHT JOIN t4
767*de75638bSdrh  NATURAL FULL JOIN t5
768*de75638bSdrh  WHERE b BETWEEN 12 AND 17
769*de75638bSdrh  ORDER BY 1 NULLS FIRST;
770*de75638bSdrh} {
771*de75638bSdrh}
772*de75638bSdrhdo_execsql_test joinB-57 {
773*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
774*de75638bSdrh  FROM t1
775*de75638bSdrh  INNER JOIN t2 USING(a)
776*de75638bSdrh  LEFT JOIN t3 USING(a)
777*de75638bSdrh  FULL JOIN t4 USING(a)
778*de75638bSdrh  INNER JOIN t5 USING(a)
779*de75638bSdrh  ORDER BY 1 NULLS FIRST;
780*de75638bSdrh} {
781*de75638bSdrh  15 15 15 15 15 15
782*de75638bSdrh  19  -  -  - 19 19
783*de75638bSdrh}
784*de75638bSdrhdo_execsql_test joinB-58 {
785*de75638bSdrh  SELECT a, c, d, e, f, g
786*de75638bSdrh  FROM t1
787*de75638bSdrh  INNER JOIN t2 USING(a,b)
788*de75638bSdrh  LEFT JOIN t3 USING(a,b)
789*de75638bSdrh  FULL JOIN t4 USING(a,b)
790*de75638bSdrh  INNER JOIN t5 USING(a,b)
791*de75638bSdrh  WHERE a<>13
792*de75638bSdrh  ORDER BY 1 NULLS FIRST;
793*de75638bSdrh} {
794*de75638bSdrh  15 35 35 35 35 35
795*de75638bSdrh  19  -  -  - 39 39
796*de75638bSdrh}
797*de75638bSdrhdo_execsql_test joinB-59 {
798*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
799*de75638bSdrh  FROM t1
800*de75638bSdrh  INNER JOIN t2 USING(a)
801*de75638bSdrh  LEFT JOIN t3 USING(a)
802*de75638bSdrh  FULL JOIN t4 USING(a)
803*de75638bSdrh  LEFT JOIN t5 USING(a)
804*de75638bSdrh  ORDER BY 1 NULLS FIRST;
805*de75638bSdrh} {
806*de75638bSdrh  11  -  -  - 11  -
807*de75638bSdrh  12 12 12 12  -  -
808*de75638bSdrh  13  -  -  - 13  -
809*de75638bSdrh  15 15 15 15 15 15
810*de75638bSdrh  19  -  -  - 19 19
811*de75638bSdrh}
812*de75638bSdrhdo_execsql_test joinB-60 {
813*de75638bSdrh  SELECT a, c, d, e, f, g
814*de75638bSdrh  FROM t1
815*de75638bSdrh  INNER JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
816*de75638bSdrh  FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
817*de75638bSdrh  WHERE a<=18
818*de75638bSdrh  ORDER BY 1 NULLS FIRST;
819*de75638bSdrh} {
820*de75638bSdrh  11  -  -  - 31  -
821*de75638bSdrh  12 32 32 32  -  -
822*de75638bSdrh  13  -  -  - 33  -
823*de75638bSdrh  15 35 35 35 35 35
824*de75638bSdrh}
825*de75638bSdrhdo_execsql_test joinB-61 {
826*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
827*de75638bSdrh  FROM t1
828*de75638bSdrh  INNER JOIN t2 USING(a)
829*de75638bSdrh  LEFT JOIN t3 USING(a)
830*de75638bSdrh  FULL JOIN t4 USING(a)
831*de75638bSdrh  RIGHT JOIN t5 USING(a)
832*de75638bSdrh  ORDER BY 1 NULLS FIRST;
833*de75638bSdrh} {
834*de75638bSdrh  15 15 15 15 15 15
835*de75638bSdrh  17  -  -  -  - 17
836*de75638bSdrh  18  -  -  -  - 18
837*de75638bSdrh  19  -  -  - 19 19
838*de75638bSdrh}
839*de75638bSdrhdo_execsql_test joinB-62 {
840*de75638bSdrh  SELECT a, b, c, d, e, f, g
841*de75638bSdrh  FROM t1
842*de75638bSdrh  INNER JOIN t2 USING(a,b)
843*de75638bSdrh  LEFT JOIN t3 USING(a,b)
844*de75638bSdrh  FULL JOIN t4 USING(a,b)
845*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
846*de75638bSdrh  WHERE d<>33 OR d IS NULL
847*de75638bSdrh  ORDER BY 1 NULLS FIRST;
848*de75638bSdrh} {
849*de75638bSdrh  15 25 35 35 35 35 35
850*de75638bSdrh  17 27  -  -  -  - 37
851*de75638bSdrh  18 28  -  -  -  - 38
852*de75638bSdrh  19 29  -  -  - 39 39
853*de75638bSdrh}
854*de75638bSdrhdo_execsql_test joinB-63 {
855*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
856*de75638bSdrh  FROM t1
857*de75638bSdrh  INNER JOIN t2 USING(a)
858*de75638bSdrh  LEFT JOIN t3 USING(a)
859*de75638bSdrh  FULL JOIN t4 USING(a)
860*de75638bSdrh  FULL JOIN t5 USING(a)
861*de75638bSdrh  ORDER BY 1 NULLS FIRST;
862*de75638bSdrh} {
863*de75638bSdrh  11  -  -  - 11  -
864*de75638bSdrh  12 12 12 12  -  -
865*de75638bSdrh  13  -  -  - 13  -
866*de75638bSdrh  15 15 15 15 15 15
867*de75638bSdrh  17  -  -  -  - 17
868*de75638bSdrh  18  -  -  -  - 18
869*de75638bSdrh  19  -  -  - 19 19
870*de75638bSdrh}
871*de75638bSdrhdo_execsql_test joinB-64 {
872*de75638bSdrh  SELECT b, c, d, e, f, g
873*de75638bSdrh  FROM t1
874*de75638bSdrh  NATURAL INNER JOIN t2
875*de75638bSdrh  NATURAL LEFT JOIN t3
876*de75638bSdrh  NATURAL FULL JOIN t4
877*de75638bSdrh  NATURAL FULL JOIN t5
878*de75638bSdrh  WHERE b BETWEEN 12 AND 17
879*de75638bSdrh  ORDER BY 1 NULLS FIRST;
880*de75638bSdrh} {
881*de75638bSdrh}
882*de75638bSdrhdo_execsql_test joinB-65 {
883*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
884*de75638bSdrh  FROM t1
885*de75638bSdrh  INNER JOIN t2 USING(a)
886*de75638bSdrh  RIGHT JOIN t3 USING(a)
887*de75638bSdrh  INNER JOIN t4 USING(a)
888*de75638bSdrh  INNER JOIN t5 USING(a)
889*de75638bSdrh  ORDER BY 1 NULLS FIRST;
890*de75638bSdrh} {
891*de75638bSdrh  15 15 15 15 15 15
892*de75638bSdrh  19  -  - 19 19 19
893*de75638bSdrh}
894*de75638bSdrhdo_execsql_test joinB-66 {
895*de75638bSdrh  SELECT a, c, d, e, f, g
896*de75638bSdrh  FROM t1
897*de75638bSdrh  INNER JOIN t2 USING(a,b)
898*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
899*de75638bSdrh  INNER JOIN t4 USING(a,b)
900*de75638bSdrh  INNER JOIN t5 USING(a,b)
901*de75638bSdrh  WHERE a<>13
902*de75638bSdrh  ORDER BY 1 NULLS FIRST;
903*de75638bSdrh} {
904*de75638bSdrh  15 35 35 35 35 35
905*de75638bSdrh  19  -  - 39 39 39
906*de75638bSdrh}
907*de75638bSdrhdo_execsql_test joinB-67 {
908*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
909*de75638bSdrh  FROM t1
910*de75638bSdrh  INNER JOIN t2 USING(a)
911*de75638bSdrh  RIGHT JOIN t3 USING(a)
912*de75638bSdrh  INNER JOIN t4 USING(a)
913*de75638bSdrh  LEFT JOIN t5 USING(a)
914*de75638bSdrh  ORDER BY 1 NULLS FIRST;
915*de75638bSdrh} {
916*de75638bSdrh  11  -  - 11 11  -
917*de75638bSdrh  13  -  - 13 13  -
918*de75638bSdrh  15 15 15 15 15 15
919*de75638bSdrh  19  -  - 19 19 19
920*de75638bSdrh}
921*de75638bSdrhdo_execsql_test joinB-68 {
922*de75638bSdrh  SELECT a, c, d, e, f, g
923*de75638bSdrh  FROM t1
924*de75638bSdrh  INNER JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
925*de75638bSdrh  INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
926*de75638bSdrh  WHERE a<=18
927*de75638bSdrh  ORDER BY 1 NULLS FIRST;
928*de75638bSdrh} {
929*de75638bSdrh  11 31  - 31 31  -
930*de75638bSdrh  15 35 35 35 35 35
931*de75638bSdrh}
932*de75638bSdrhdo_execsql_test joinB-69 {
933*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
934*de75638bSdrh  FROM t1
935*de75638bSdrh  INNER JOIN t2 USING(a)
936*de75638bSdrh  RIGHT JOIN t3 USING(a)
937*de75638bSdrh  INNER JOIN t4 USING(a)
938*de75638bSdrh  RIGHT JOIN t5 USING(a)
939*de75638bSdrh  ORDER BY 1 NULLS FIRST;
940*de75638bSdrh} {
941*de75638bSdrh  15 15 15 15 15 15
942*de75638bSdrh  17  -  -  -  - 17
943*de75638bSdrh  18  -  -  -  - 18
944*de75638bSdrh  19  -  - 19 19 19
945*de75638bSdrh}
946*de75638bSdrhdo_execsql_test joinB-70 {
947*de75638bSdrh  SELECT a, b, c, d, e, f, g
948*de75638bSdrh  FROM t1
949*de75638bSdrh  INNER JOIN t2 USING(a,b)
950*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
951*de75638bSdrh  INNER JOIN t4 USING(a,b)
952*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
953*de75638bSdrh  WHERE d<>33 OR d IS NULL
954*de75638bSdrh  ORDER BY 1 NULLS FIRST;
955*de75638bSdrh} {
956*de75638bSdrh  15 25 35 35 35 35 35
957*de75638bSdrh  17 27  -  -  -  - 37
958*de75638bSdrh  18 28  -  -  -  - 38
959*de75638bSdrh  19 29  -  - 39 39 39
960*de75638bSdrh}
961*de75638bSdrhdo_execsql_test joinB-71 {
962*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
963*de75638bSdrh  FROM t1
964*de75638bSdrh  INNER JOIN t2 USING(a)
965*de75638bSdrh  RIGHT JOIN t3 USING(a)
966*de75638bSdrh  INNER JOIN t4 USING(a)
967*de75638bSdrh  FULL JOIN t5 USING(a)
968*de75638bSdrh  ORDER BY 1 NULLS FIRST;
969*de75638bSdrh} {
970*de75638bSdrh  11  -  - 11 11  -
971*de75638bSdrh  13  -  - 13 13  -
972*de75638bSdrh  15 15 15 15 15 15
973*de75638bSdrh  17  -  -  -  - 17
974*de75638bSdrh  18  -  -  -  - 18
975*de75638bSdrh  19  -  - 19 19 19
976*de75638bSdrh}
977*de75638bSdrhdo_execsql_test joinB-72 {
978*de75638bSdrh  SELECT b, c, d, e, f, g
979*de75638bSdrh  FROM t1
980*de75638bSdrh  NATURAL INNER JOIN t2
981*de75638bSdrh  NATURAL RIGHT JOIN t3
982*de75638bSdrh  NATURAL INNER JOIN t4
983*de75638bSdrh  NATURAL FULL JOIN t5
984*de75638bSdrh  WHERE b BETWEEN 12 AND 17
985*de75638bSdrh  ORDER BY 1 NULLS FIRST;
986*de75638bSdrh} {
987*de75638bSdrh}
988*de75638bSdrhdo_execsql_test joinB-73 {
989*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
990*de75638bSdrh  FROM t1
991*de75638bSdrh  INNER JOIN t2 USING(a)
992*de75638bSdrh  RIGHT JOIN t3 USING(a)
993*de75638bSdrh  LEFT JOIN t4 USING(a)
994*de75638bSdrh  INNER JOIN t5 USING(a)
995*de75638bSdrh  ORDER BY 1 NULLS FIRST;
996*de75638bSdrh} {
997*de75638bSdrh  15 15 15 15 15 15
998*de75638bSdrh  17  -  - 17  - 17
999*de75638bSdrh  18  -  - 18  - 18
1000*de75638bSdrh  19  -  - 19 19 19
1001*de75638bSdrh}
1002*de75638bSdrhdo_execsql_test joinB-74 {
1003*de75638bSdrh  SELECT a, c, d, e, f, g
1004*de75638bSdrh  FROM t1
1005*de75638bSdrh  INNER JOIN t2 USING(a,b)
1006*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
1007*de75638bSdrh  LEFT JOIN t4 USING(a,b)
1008*de75638bSdrh  INNER JOIN t5 USING(a,b)
1009*de75638bSdrh  WHERE a<>13
1010*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1011*de75638bSdrh} {
1012*de75638bSdrh  15 35 35 35 35 35
1013*de75638bSdrh  17  -  - 37  - 37
1014*de75638bSdrh  18  -  - 38  - 38
1015*de75638bSdrh  19  -  - 39 39 39
1016*de75638bSdrh}
1017*de75638bSdrhdo_execsql_test joinB-75 {
1018*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1019*de75638bSdrh  FROM t1
1020*de75638bSdrh  INNER JOIN t2 USING(a)
1021*de75638bSdrh  RIGHT JOIN t3 USING(a)
1022*de75638bSdrh  LEFT JOIN t4 USING(a)
1023*de75638bSdrh  LEFT JOIN t5 USING(a)
1024*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1025*de75638bSdrh} {
1026*de75638bSdrh   -  -  -  -  -  -
1027*de75638bSdrh  11  -  - 11 11  -
1028*de75638bSdrh  12 12 12 12  -  -
1029*de75638bSdrh  13  -  - 13 13  -
1030*de75638bSdrh  15 15 15 15 15 15
1031*de75638bSdrh  17  -  - 17  - 17
1032*de75638bSdrh  18  -  - 18  - 18
1033*de75638bSdrh  19  -  - 19 19 19
1034*de75638bSdrh}
1035*de75638bSdrhdo_execsql_test joinB-76 {
1036*de75638bSdrh  SELECT a, c, d, e, f, g
1037*de75638bSdrh  FROM t1
1038*de75638bSdrh  INNER JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
1039*de75638bSdrh  LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
1040*de75638bSdrh  WHERE a<=18
1041*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1042*de75638bSdrh} {
1043*de75638bSdrh  11 31  - 31 31  -
1044*de75638bSdrh  12 32 32 32  -  -
1045*de75638bSdrh  15 35 35 35 35 35
1046*de75638bSdrh  17 37  - 37  -  -
1047*de75638bSdrh}
1048*de75638bSdrhdo_execsql_test joinB-77 {
1049*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1050*de75638bSdrh  FROM t1
1051*de75638bSdrh  INNER JOIN t2 USING(a)
1052*de75638bSdrh  RIGHT JOIN t3 USING(a)
1053*de75638bSdrh  LEFT JOIN t4 USING(a)
1054*de75638bSdrh  RIGHT JOIN t5 USING(a)
1055*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1056*de75638bSdrh} {
1057*de75638bSdrh  15 15 15 15 15 15
1058*de75638bSdrh  17  -  - 17  - 17
1059*de75638bSdrh  18  -  - 18  - 18
1060*de75638bSdrh  19  -  - 19 19 19
1061*de75638bSdrh}
1062*de75638bSdrhdo_execsql_test joinB-78 {
1063*de75638bSdrh  SELECT a, b, c, d, e, f, g
1064*de75638bSdrh  FROM t1
1065*de75638bSdrh  INNER JOIN t2 USING(a,b)
1066*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
1067*de75638bSdrh  LEFT JOIN t4 USING(a,b)
1068*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
1069*de75638bSdrh  WHERE d<>33 OR d IS NULL
1070*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1071*de75638bSdrh} {
1072*de75638bSdrh  15 25 35 35 35 35 35
1073*de75638bSdrh  17 27  -  - 37  - 37
1074*de75638bSdrh  18 28  -  - 38  - 38
1075*de75638bSdrh  19 29  -  - 39 39 39
1076*de75638bSdrh}
1077*de75638bSdrhdo_execsql_test joinB-79 {
1078*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1079*de75638bSdrh  FROM t1
1080*de75638bSdrh  INNER JOIN t2 USING(a)
1081*de75638bSdrh  RIGHT JOIN t3 USING(a)
1082*de75638bSdrh  LEFT JOIN t4 USING(a)
1083*de75638bSdrh  FULL JOIN t5 USING(a)
1084*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1085*de75638bSdrh} {
1086*de75638bSdrh   -  -  -  -  -  -
1087*de75638bSdrh  11  -  - 11 11  -
1088*de75638bSdrh  12 12 12 12  -  -
1089*de75638bSdrh  13  -  - 13 13  -
1090*de75638bSdrh  15 15 15 15 15 15
1091*de75638bSdrh  17  -  - 17  - 17
1092*de75638bSdrh  18  -  - 18  - 18
1093*de75638bSdrh  19  -  - 19 19 19
1094*de75638bSdrh}
1095*de75638bSdrhdo_execsql_test joinB-80 {
1096*de75638bSdrh  SELECT b, c, d, e, f, g
1097*de75638bSdrh  FROM t1
1098*de75638bSdrh  NATURAL INNER JOIN t2
1099*de75638bSdrh  NATURAL RIGHT JOIN t3
1100*de75638bSdrh  NATURAL LEFT JOIN t4
1101*de75638bSdrh  NATURAL FULL JOIN t5
1102*de75638bSdrh  WHERE b BETWEEN 12 AND 17
1103*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1104*de75638bSdrh} {
1105*de75638bSdrh}
1106*de75638bSdrhdo_execsql_test joinB-81 {
1107*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1108*de75638bSdrh  FROM t1
1109*de75638bSdrh  INNER JOIN t2 USING(a)
1110*de75638bSdrh  RIGHT JOIN t3 USING(a)
1111*de75638bSdrh  RIGHT JOIN t4 USING(a)
1112*de75638bSdrh  INNER JOIN t5 USING(a)
1113*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1114*de75638bSdrh} {
1115*de75638bSdrh  15 15 15 15 15 15
1116*de75638bSdrh  19  -  - 19 19 19
1117*de75638bSdrh}
1118*de75638bSdrhdo_execsql_test joinB-82 {
1119*de75638bSdrh  SELECT a, c, d, e, f, g
1120*de75638bSdrh  FROM t1
1121*de75638bSdrh  INNER JOIN t2 USING(a,b)
1122*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
1123*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
1124*de75638bSdrh  INNER JOIN t5 USING(a,b)
1125*de75638bSdrh  WHERE a<>13
1126*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1127*de75638bSdrh} {
1128*de75638bSdrh  15 35 35 35 35 35
1129*de75638bSdrh  19  -  - 39 39 39
1130*de75638bSdrh}
1131*de75638bSdrhdo_execsql_test joinB-83 {
1132*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1133*de75638bSdrh  FROM t1
1134*de75638bSdrh  INNER JOIN t2 USING(a)
1135*de75638bSdrh  RIGHT JOIN t3 USING(a)
1136*de75638bSdrh  RIGHT JOIN t4 USING(a)
1137*de75638bSdrh  LEFT JOIN t5 USING(a)
1138*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1139*de75638bSdrh} {
1140*de75638bSdrh  11  -  - 11 11  -
1141*de75638bSdrh  13  -  - 13 13  -
1142*de75638bSdrh  15 15 15 15 15 15
1143*de75638bSdrh  19  -  - 19 19 19
1144*de75638bSdrh}
1145*de75638bSdrhdo_execsql_test joinB-84 {
1146*de75638bSdrh  SELECT a, c, d, e, f, g
1147*de75638bSdrh  FROM t1
1148*de75638bSdrh  INNER JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
1149*de75638bSdrh  RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
1150*de75638bSdrh  WHERE a<=18
1151*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1152*de75638bSdrh} {
1153*de75638bSdrh  11 31  - 31 31  -
1154*de75638bSdrh  13  -  -  - 33  -
1155*de75638bSdrh  15 35 35 35 35 35
1156*de75638bSdrh}
1157*de75638bSdrhdo_execsql_test joinB-85 {
1158*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1159*de75638bSdrh  FROM t1
1160*de75638bSdrh  INNER JOIN t2 USING(a)
1161*de75638bSdrh  RIGHT JOIN t3 USING(a)
1162*de75638bSdrh  RIGHT JOIN t4 USING(a)
1163*de75638bSdrh  RIGHT JOIN t5 USING(a)
1164*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1165*de75638bSdrh} {
1166*de75638bSdrh  15 15 15 15 15 15
1167*de75638bSdrh  17  -  -  -  - 17
1168*de75638bSdrh  18  -  -  -  - 18
1169*de75638bSdrh  19  -  - 19 19 19
1170*de75638bSdrh}
1171*de75638bSdrhdo_execsql_test joinB-86 {
1172*de75638bSdrh  SELECT a, b, c, d, e, f, g
1173*de75638bSdrh  FROM t1
1174*de75638bSdrh  INNER JOIN t2 USING(a,b)
1175*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
1176*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
1177*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
1178*de75638bSdrh  WHERE d<>33 OR d IS NULL
1179*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1180*de75638bSdrh} {
1181*de75638bSdrh  15 25 35 35 35 35 35
1182*de75638bSdrh  17 27  -  -  -  - 37
1183*de75638bSdrh  18 28  -  -  -  - 38
1184*de75638bSdrh  19 29  -  - 39 39 39
1185*de75638bSdrh}
1186*de75638bSdrhdo_execsql_test joinB-87 {
1187*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1188*de75638bSdrh  FROM t1
1189*de75638bSdrh  INNER JOIN t2 USING(a)
1190*de75638bSdrh  RIGHT JOIN t3 USING(a)
1191*de75638bSdrh  RIGHT JOIN t4 USING(a)
1192*de75638bSdrh  FULL JOIN t5 USING(a)
1193*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1194*de75638bSdrh} {
1195*de75638bSdrh  11  -  - 11 11  -
1196*de75638bSdrh  13  -  - 13 13  -
1197*de75638bSdrh  15 15 15 15 15 15
1198*de75638bSdrh  17  -  -  -  - 17
1199*de75638bSdrh  18  -  -  -  - 18
1200*de75638bSdrh  19  -  - 19 19 19
1201*de75638bSdrh}
1202*de75638bSdrhdo_execsql_test joinB-88 {
1203*de75638bSdrh  SELECT b, c, d, e, f, g
1204*de75638bSdrh  FROM t1
1205*de75638bSdrh  NATURAL INNER JOIN t2
1206*de75638bSdrh  NATURAL RIGHT JOIN t3
1207*de75638bSdrh  NATURAL RIGHT JOIN t4
1208*de75638bSdrh  NATURAL FULL JOIN t5
1209*de75638bSdrh  WHERE b BETWEEN 12 AND 17
1210*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1211*de75638bSdrh} {
1212*de75638bSdrh}
1213*de75638bSdrhdo_execsql_test joinB-89 {
1214*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1215*de75638bSdrh  FROM t1
1216*de75638bSdrh  INNER JOIN t2 USING(a)
1217*de75638bSdrh  RIGHT JOIN t3 USING(a)
1218*de75638bSdrh  FULL JOIN t4 USING(a)
1219*de75638bSdrh  INNER JOIN t5 USING(a)
1220*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1221*de75638bSdrh} {
1222*de75638bSdrh  15 15 15 15 15 15
1223*de75638bSdrh  17  -  - 17  - 17
1224*de75638bSdrh  18  -  - 18  - 18
1225*de75638bSdrh  19  -  - 19 19 19
1226*de75638bSdrh}
1227*de75638bSdrhdo_execsql_test joinB-90 {
1228*de75638bSdrh  SELECT a, c, d, e, f, g
1229*de75638bSdrh  FROM t1
1230*de75638bSdrh  INNER JOIN t2 USING(a,b)
1231*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
1232*de75638bSdrh  FULL JOIN t4 USING(a,b)
1233*de75638bSdrh  INNER JOIN t5 USING(a,b)
1234*de75638bSdrh  WHERE a<>13
1235*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1236*de75638bSdrh} {
1237*de75638bSdrh  15 35 35 35 35 35
1238*de75638bSdrh  17  -  - 37  - 37
1239*de75638bSdrh  18  -  - 38  - 38
1240*de75638bSdrh  19  -  - 39 39 39
1241*de75638bSdrh}
1242*de75638bSdrhdo_execsql_test joinB-91 {
1243*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1244*de75638bSdrh  FROM t1
1245*de75638bSdrh  INNER JOIN t2 USING(a)
1246*de75638bSdrh  RIGHT JOIN t3 USING(a)
1247*de75638bSdrh  FULL JOIN t4 USING(a)
1248*de75638bSdrh  LEFT JOIN t5 USING(a)
1249*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1250*de75638bSdrh} {
1251*de75638bSdrh   -  -  -  -  -  -
1252*de75638bSdrh  11  -  - 11 11  -
1253*de75638bSdrh  12 12 12 12  -  -
1254*de75638bSdrh  13  -  - 13 13  -
1255*de75638bSdrh  15 15 15 15 15 15
1256*de75638bSdrh  17  -  - 17  - 17
1257*de75638bSdrh  18  -  - 18  - 18
1258*de75638bSdrh  19  -  - 19 19 19
1259*de75638bSdrh}
1260*de75638bSdrhdo_execsql_test joinB-92 {
1261*de75638bSdrh  SELECT a, c, d, e, f, g
1262*de75638bSdrh  FROM t1
1263*de75638bSdrh  INNER JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
1264*de75638bSdrh  FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
1265*de75638bSdrh  WHERE a<=18
1266*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1267*de75638bSdrh} {
1268*de75638bSdrh  11 31  - 31 31  -
1269*de75638bSdrh  12 32 32 32  -  -
1270*de75638bSdrh  13  -  -  - 33  -
1271*de75638bSdrh  15 35 35 35 35 35
1272*de75638bSdrh  17 37  - 37  -  -
1273*de75638bSdrh}
1274*de75638bSdrhdo_execsql_test joinB-93 {
1275*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1276*de75638bSdrh  FROM t1
1277*de75638bSdrh  INNER JOIN t2 USING(a)
1278*de75638bSdrh  RIGHT JOIN t3 USING(a)
1279*de75638bSdrh  FULL JOIN t4 USING(a)
1280*de75638bSdrh  RIGHT JOIN t5 USING(a)
1281*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1282*de75638bSdrh} {
1283*de75638bSdrh  15 15 15 15 15 15
1284*de75638bSdrh  17  -  - 17  - 17
1285*de75638bSdrh  18  -  - 18  - 18
1286*de75638bSdrh  19  -  - 19 19 19
1287*de75638bSdrh}
1288*de75638bSdrhdo_execsql_test joinB-94 {
1289*de75638bSdrh  SELECT a, b, c, d, e, f, g
1290*de75638bSdrh  FROM t1
1291*de75638bSdrh  INNER JOIN t2 USING(a,b)
1292*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
1293*de75638bSdrh  FULL JOIN t4 USING(a,b)
1294*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
1295*de75638bSdrh  WHERE d<>33 OR d IS NULL
1296*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1297*de75638bSdrh} {
1298*de75638bSdrh  15 25 35 35 35 35 35
1299*de75638bSdrh  17 27  -  - 37  - 37
1300*de75638bSdrh  18 28  -  - 38  - 38
1301*de75638bSdrh  19 29  -  - 39 39 39
1302*de75638bSdrh}
1303*de75638bSdrhdo_execsql_test joinB-95 {
1304*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1305*de75638bSdrh  FROM t1
1306*de75638bSdrh  INNER JOIN t2 USING(a)
1307*de75638bSdrh  RIGHT JOIN t3 USING(a)
1308*de75638bSdrh  FULL JOIN t4 USING(a)
1309*de75638bSdrh  FULL JOIN t5 USING(a)
1310*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1311*de75638bSdrh} {
1312*de75638bSdrh   -  -  -  -  -  -
1313*de75638bSdrh  11  -  - 11 11  -
1314*de75638bSdrh  12 12 12 12  -  -
1315*de75638bSdrh  13  -  - 13 13  -
1316*de75638bSdrh  15 15 15 15 15 15
1317*de75638bSdrh  17  -  - 17  - 17
1318*de75638bSdrh  18  -  - 18  - 18
1319*de75638bSdrh  19  -  - 19 19 19
1320*de75638bSdrh}
1321*de75638bSdrhdo_execsql_test joinB-96 {
1322*de75638bSdrh  SELECT b, c, d, e, f, g
1323*de75638bSdrh  FROM t1
1324*de75638bSdrh  NATURAL INNER JOIN t2
1325*de75638bSdrh  NATURAL RIGHT JOIN t3
1326*de75638bSdrh  NATURAL FULL JOIN t4
1327*de75638bSdrh  NATURAL FULL JOIN t5
1328*de75638bSdrh  WHERE b BETWEEN 12 AND 17
1329*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1330*de75638bSdrh} {
1331*de75638bSdrh}
1332*de75638bSdrhdo_execsql_test joinB-97 {
1333*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1334*de75638bSdrh  FROM t1
1335*de75638bSdrh  INNER JOIN t2 USING(a)
1336*de75638bSdrh  FULL JOIN t3 USING(a)
1337*de75638bSdrh  INNER JOIN t4 USING(a)
1338*de75638bSdrh  INNER JOIN t5 USING(a)
1339*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1340*de75638bSdrh} {
1341*de75638bSdrh  15 15 15 15 15 15
1342*de75638bSdrh  19  -  - 19 19 19
1343*de75638bSdrh}
1344*de75638bSdrhdo_execsql_test joinB-98 {
1345*de75638bSdrh  SELECT a, c, d, e, f, g
1346*de75638bSdrh  FROM t1
1347*de75638bSdrh  INNER JOIN t2 USING(a,b)
1348*de75638bSdrh  FULL JOIN t3 USING(a,b)
1349*de75638bSdrh  INNER JOIN t4 USING(a,b)
1350*de75638bSdrh  INNER JOIN t5 USING(a,b)
1351*de75638bSdrh  WHERE a<>13
1352*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1353*de75638bSdrh} {
1354*de75638bSdrh  15 35 35 35 35 35
1355*de75638bSdrh  19  -  - 39 39 39
1356*de75638bSdrh}
1357*de75638bSdrhdo_execsql_test joinB-99 {
1358*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1359*de75638bSdrh  FROM t1
1360*de75638bSdrh  INNER JOIN t2 USING(a)
1361*de75638bSdrh  FULL JOIN t3 USING(a)
1362*de75638bSdrh  INNER JOIN t4 USING(a)
1363*de75638bSdrh  LEFT JOIN t5 USING(a)
1364*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1365*de75638bSdrh} {
1366*de75638bSdrh  11  -  - 11 11  -
1367*de75638bSdrh  13  -  - 13 13  -
1368*de75638bSdrh  15 15 15 15 15 15
1369*de75638bSdrh  19  -  - 19 19 19
1370*de75638bSdrh}
1371*de75638bSdrhdo_execsql_test joinB-100 {
1372*de75638bSdrh  SELECT a, c, d, e, f, g
1373*de75638bSdrh  FROM t1
1374*de75638bSdrh  INNER JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
1375*de75638bSdrh  INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
1376*de75638bSdrh  WHERE a<=18
1377*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1378*de75638bSdrh} {
1379*de75638bSdrh  11 31  - 31 31  -
1380*de75638bSdrh  15 35 35 35 35 35
1381*de75638bSdrh}
1382*de75638bSdrhdo_execsql_test joinB-101 {
1383*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1384*de75638bSdrh  FROM t1
1385*de75638bSdrh  INNER JOIN t2 USING(a)
1386*de75638bSdrh  FULL JOIN t3 USING(a)
1387*de75638bSdrh  INNER JOIN t4 USING(a)
1388*de75638bSdrh  RIGHT JOIN t5 USING(a)
1389*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1390*de75638bSdrh} {
1391*de75638bSdrh  15 15 15 15 15 15
1392*de75638bSdrh  17  -  -  -  - 17
1393*de75638bSdrh  18  -  -  -  - 18
1394*de75638bSdrh  19  -  - 19 19 19
1395*de75638bSdrh}
1396*de75638bSdrhdo_execsql_test joinB-102 {
1397*de75638bSdrh  SELECT a, b, c, d, e, f, g
1398*de75638bSdrh  FROM t1
1399*de75638bSdrh  INNER JOIN t2 USING(a,b)
1400*de75638bSdrh  FULL JOIN t3 USING(a,b)
1401*de75638bSdrh  INNER JOIN t4 USING(a,b)
1402*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
1403*de75638bSdrh  WHERE d<>33 OR d IS NULL
1404*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1405*de75638bSdrh} {
1406*de75638bSdrh  15 25 35 35 35 35 35
1407*de75638bSdrh  17 27  -  -  -  - 37
1408*de75638bSdrh  18 28  -  -  -  - 38
1409*de75638bSdrh  19 29  -  - 39 39 39
1410*de75638bSdrh}
1411*de75638bSdrhdo_execsql_test joinB-103 {
1412*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1413*de75638bSdrh  FROM t1
1414*de75638bSdrh  INNER JOIN t2 USING(a)
1415*de75638bSdrh  FULL JOIN t3 USING(a)
1416*de75638bSdrh  INNER JOIN t4 USING(a)
1417*de75638bSdrh  FULL JOIN t5 USING(a)
1418*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1419*de75638bSdrh} {
1420*de75638bSdrh  11  -  - 11 11  -
1421*de75638bSdrh  13  -  - 13 13  -
1422*de75638bSdrh  15 15 15 15 15 15
1423*de75638bSdrh  17  -  -  -  - 17
1424*de75638bSdrh  18  -  -  -  - 18
1425*de75638bSdrh  19  -  - 19 19 19
1426*de75638bSdrh}
1427*de75638bSdrhdo_execsql_test joinB-104 {
1428*de75638bSdrh  SELECT b, c, d, e, f, g
1429*de75638bSdrh  FROM t1
1430*de75638bSdrh  NATURAL INNER JOIN t2
1431*de75638bSdrh  NATURAL FULL JOIN t3
1432*de75638bSdrh  NATURAL INNER JOIN t4
1433*de75638bSdrh  NATURAL FULL JOIN t5
1434*de75638bSdrh  WHERE b BETWEEN 12 AND 17
1435*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1436*de75638bSdrh} {
1437*de75638bSdrh}
1438*de75638bSdrhdo_execsql_test joinB-105 {
1439*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1440*de75638bSdrh  FROM t1
1441*de75638bSdrh  INNER JOIN t2 USING(a)
1442*de75638bSdrh  FULL JOIN t3 USING(a)
1443*de75638bSdrh  LEFT JOIN t4 USING(a)
1444*de75638bSdrh  INNER JOIN t5 USING(a)
1445*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1446*de75638bSdrh} {
1447*de75638bSdrh  15 15 15 15 15 15
1448*de75638bSdrh  17  -  - 17  - 17
1449*de75638bSdrh  18  -  - 18  - 18
1450*de75638bSdrh  19  -  - 19 19 19
1451*de75638bSdrh}
1452*de75638bSdrhdo_execsql_test joinB-106 {
1453*de75638bSdrh  SELECT a, c, d, e, f, g
1454*de75638bSdrh  FROM t1
1455*de75638bSdrh  INNER JOIN t2 USING(a,b)
1456*de75638bSdrh  FULL JOIN t3 USING(a,b)
1457*de75638bSdrh  LEFT JOIN t4 USING(a,b)
1458*de75638bSdrh  INNER JOIN t5 USING(a,b)
1459*de75638bSdrh  WHERE a<>13
1460*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1461*de75638bSdrh} {
1462*de75638bSdrh  15 35 35 35 35 35
1463*de75638bSdrh  17  -  - 37  - 37
1464*de75638bSdrh  18  -  - 38  - 38
1465*de75638bSdrh  19  -  - 39 39 39
1466*de75638bSdrh}
1467*de75638bSdrhdo_execsql_test joinB-107 {
1468*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1469*de75638bSdrh  FROM t1
1470*de75638bSdrh  INNER JOIN t2 USING(a)
1471*de75638bSdrh  FULL JOIN t3 USING(a)
1472*de75638bSdrh  LEFT JOIN t4 USING(a)
1473*de75638bSdrh  LEFT JOIN t5 USING(a)
1474*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1475*de75638bSdrh} {
1476*de75638bSdrh   -  -  -  -  -  -
1477*de75638bSdrh  11  -  - 11 11  -
1478*de75638bSdrh  12 12 12 12  -  -
1479*de75638bSdrh  13  -  - 13 13  -
1480*de75638bSdrh  15 15 15 15 15 15
1481*de75638bSdrh  17  -  - 17  - 17
1482*de75638bSdrh  18  -  - 18  - 18
1483*de75638bSdrh  19  -  - 19 19 19
1484*de75638bSdrh}
1485*de75638bSdrhdo_execsql_test joinB-108 {
1486*de75638bSdrh  SELECT a, c, d, e, f, g
1487*de75638bSdrh  FROM t1
1488*de75638bSdrh  INNER JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
1489*de75638bSdrh  LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
1490*de75638bSdrh  WHERE a<=18
1491*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1492*de75638bSdrh} {
1493*de75638bSdrh  11 31  - 31 31  -
1494*de75638bSdrh  12 32 32 32  -  -
1495*de75638bSdrh  15 35 35 35 35 35
1496*de75638bSdrh  17 37  - 37  -  -
1497*de75638bSdrh}
1498*de75638bSdrhdo_execsql_test joinB-109 {
1499*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1500*de75638bSdrh  FROM t1
1501*de75638bSdrh  INNER JOIN t2 USING(a)
1502*de75638bSdrh  FULL JOIN t3 USING(a)
1503*de75638bSdrh  LEFT JOIN t4 USING(a)
1504*de75638bSdrh  RIGHT JOIN t5 USING(a)
1505*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1506*de75638bSdrh} {
1507*de75638bSdrh  15 15 15 15 15 15
1508*de75638bSdrh  17  -  - 17  - 17
1509*de75638bSdrh  18  -  - 18  - 18
1510*de75638bSdrh  19  -  - 19 19 19
1511*de75638bSdrh}
1512*de75638bSdrhdo_execsql_test joinB-110 {
1513*de75638bSdrh  SELECT a, b, c, d, e, f, g
1514*de75638bSdrh  FROM t1
1515*de75638bSdrh  INNER JOIN t2 USING(a,b)
1516*de75638bSdrh  FULL JOIN t3 USING(a,b)
1517*de75638bSdrh  LEFT JOIN t4 USING(a,b)
1518*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
1519*de75638bSdrh  WHERE d<>33 OR d IS NULL
1520*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1521*de75638bSdrh} {
1522*de75638bSdrh  15 25 35 35 35 35 35
1523*de75638bSdrh  17 27  -  - 37  - 37
1524*de75638bSdrh  18 28  -  - 38  - 38
1525*de75638bSdrh  19 29  -  - 39 39 39
1526*de75638bSdrh}
1527*de75638bSdrhdo_execsql_test joinB-111 {
1528*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1529*de75638bSdrh  FROM t1
1530*de75638bSdrh  INNER JOIN t2 USING(a)
1531*de75638bSdrh  FULL JOIN t3 USING(a)
1532*de75638bSdrh  LEFT JOIN t4 USING(a)
1533*de75638bSdrh  FULL JOIN t5 USING(a)
1534*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1535*de75638bSdrh} {
1536*de75638bSdrh   -  -  -  -  -  -
1537*de75638bSdrh  11  -  - 11 11  -
1538*de75638bSdrh  12 12 12 12  -  -
1539*de75638bSdrh  13  -  - 13 13  -
1540*de75638bSdrh  15 15 15 15 15 15
1541*de75638bSdrh  17  -  - 17  - 17
1542*de75638bSdrh  18  -  - 18  - 18
1543*de75638bSdrh  19  -  - 19 19 19
1544*de75638bSdrh}
1545*de75638bSdrhdo_execsql_test joinB-112 {
1546*de75638bSdrh  SELECT b, c, d, e, f, g
1547*de75638bSdrh  FROM t1
1548*de75638bSdrh  NATURAL INNER JOIN t2
1549*de75638bSdrh  NATURAL FULL JOIN t3
1550*de75638bSdrh  NATURAL LEFT JOIN t4
1551*de75638bSdrh  NATURAL FULL JOIN t5
1552*de75638bSdrh  WHERE b BETWEEN 12 AND 17
1553*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1554*de75638bSdrh} {
1555*de75638bSdrh}
1556*de75638bSdrhdo_execsql_test joinB-113 {
1557*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1558*de75638bSdrh  FROM t1
1559*de75638bSdrh  INNER JOIN t2 USING(a)
1560*de75638bSdrh  FULL JOIN t3 USING(a)
1561*de75638bSdrh  RIGHT JOIN t4 USING(a)
1562*de75638bSdrh  INNER JOIN t5 USING(a)
1563*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1564*de75638bSdrh} {
1565*de75638bSdrh  15 15 15 15 15 15
1566*de75638bSdrh  19  -  - 19 19 19
1567*de75638bSdrh}
1568*de75638bSdrhdo_execsql_test joinB-114 {
1569*de75638bSdrh  SELECT a, c, d, e, f, g
1570*de75638bSdrh  FROM t1
1571*de75638bSdrh  INNER JOIN t2 USING(a,b)
1572*de75638bSdrh  FULL JOIN t3 USING(a,b)
1573*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
1574*de75638bSdrh  INNER JOIN t5 USING(a,b)
1575*de75638bSdrh  WHERE a<>13
1576*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1577*de75638bSdrh} {
1578*de75638bSdrh  15 35 35 35 35 35
1579*de75638bSdrh  19  -  - 39 39 39
1580*de75638bSdrh}
1581*de75638bSdrhdo_execsql_test joinB-115 {
1582*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1583*de75638bSdrh  FROM t1
1584*de75638bSdrh  INNER JOIN t2 USING(a)
1585*de75638bSdrh  FULL JOIN t3 USING(a)
1586*de75638bSdrh  RIGHT JOIN t4 USING(a)
1587*de75638bSdrh  LEFT JOIN t5 USING(a)
1588*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1589*de75638bSdrh} {
1590*de75638bSdrh  11  -  - 11 11  -
1591*de75638bSdrh  13  -  - 13 13  -
1592*de75638bSdrh  15 15 15 15 15 15
1593*de75638bSdrh  19  -  - 19 19 19
1594*de75638bSdrh}
1595*de75638bSdrhdo_execsql_test joinB-116 {
1596*de75638bSdrh  SELECT a, c, d, e, f, g
1597*de75638bSdrh  FROM t1
1598*de75638bSdrh  INNER JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
1599*de75638bSdrh  RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
1600*de75638bSdrh  WHERE a<=18
1601*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1602*de75638bSdrh} {
1603*de75638bSdrh  11 31  - 31 31  -
1604*de75638bSdrh  13  -  -  - 33  -
1605*de75638bSdrh  15 35 35 35 35 35
1606*de75638bSdrh}
1607*de75638bSdrhdo_execsql_test joinB-117 {
1608*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1609*de75638bSdrh  FROM t1
1610*de75638bSdrh  INNER JOIN t2 USING(a)
1611*de75638bSdrh  FULL JOIN t3 USING(a)
1612*de75638bSdrh  RIGHT JOIN t4 USING(a)
1613*de75638bSdrh  RIGHT JOIN t5 USING(a)
1614*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1615*de75638bSdrh} {
1616*de75638bSdrh  15 15 15 15 15 15
1617*de75638bSdrh  17  -  -  -  - 17
1618*de75638bSdrh  18  -  -  -  - 18
1619*de75638bSdrh  19  -  - 19 19 19
1620*de75638bSdrh}
1621*de75638bSdrhdo_execsql_test joinB-118 {
1622*de75638bSdrh  SELECT a, b, c, d, e, f, g
1623*de75638bSdrh  FROM t1
1624*de75638bSdrh  INNER JOIN t2 USING(a,b)
1625*de75638bSdrh  FULL JOIN t3 USING(a,b)
1626*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
1627*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
1628*de75638bSdrh  WHERE d<>33 OR d IS NULL
1629*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1630*de75638bSdrh} {
1631*de75638bSdrh  15 25 35 35 35 35 35
1632*de75638bSdrh  17 27  -  -  -  - 37
1633*de75638bSdrh  18 28  -  -  -  - 38
1634*de75638bSdrh  19 29  -  - 39 39 39
1635*de75638bSdrh}
1636*de75638bSdrhdo_execsql_test joinB-119 {
1637*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1638*de75638bSdrh  FROM t1
1639*de75638bSdrh  INNER JOIN t2 USING(a)
1640*de75638bSdrh  FULL JOIN t3 USING(a)
1641*de75638bSdrh  RIGHT JOIN t4 USING(a)
1642*de75638bSdrh  FULL JOIN t5 USING(a)
1643*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1644*de75638bSdrh} {
1645*de75638bSdrh  11  -  - 11 11  -
1646*de75638bSdrh  13  -  - 13 13  -
1647*de75638bSdrh  15 15 15 15 15 15
1648*de75638bSdrh  17  -  -  -  - 17
1649*de75638bSdrh  18  -  -  -  - 18
1650*de75638bSdrh  19  -  - 19 19 19
1651*de75638bSdrh}
1652*de75638bSdrhdo_execsql_test joinB-120 {
1653*de75638bSdrh  SELECT b, c, d, e, f, g
1654*de75638bSdrh  FROM t1
1655*de75638bSdrh  NATURAL INNER JOIN t2
1656*de75638bSdrh  NATURAL FULL JOIN t3
1657*de75638bSdrh  NATURAL RIGHT JOIN t4
1658*de75638bSdrh  NATURAL FULL JOIN t5
1659*de75638bSdrh  WHERE b BETWEEN 12 AND 17
1660*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1661*de75638bSdrh} {
1662*de75638bSdrh}
1663*de75638bSdrhdo_execsql_test joinB-121 {
1664*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1665*de75638bSdrh  FROM t1
1666*de75638bSdrh  INNER JOIN t2 USING(a)
1667*de75638bSdrh  FULL JOIN t3 USING(a)
1668*de75638bSdrh  FULL JOIN t4 USING(a)
1669*de75638bSdrh  INNER JOIN t5 USING(a)
1670*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1671*de75638bSdrh} {
1672*de75638bSdrh  15 15 15 15 15 15
1673*de75638bSdrh  17  -  - 17  - 17
1674*de75638bSdrh  18  -  - 18  - 18
1675*de75638bSdrh  19  -  - 19 19 19
1676*de75638bSdrh}
1677*de75638bSdrhdo_execsql_test joinB-122 {
1678*de75638bSdrh  SELECT a, c, d, e, f, g
1679*de75638bSdrh  FROM t1
1680*de75638bSdrh  INNER JOIN t2 USING(a,b)
1681*de75638bSdrh  FULL JOIN t3 USING(a,b)
1682*de75638bSdrh  FULL JOIN t4 USING(a,b)
1683*de75638bSdrh  INNER JOIN t5 USING(a,b)
1684*de75638bSdrh  WHERE a<>13
1685*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1686*de75638bSdrh} {
1687*de75638bSdrh  15 35 35 35 35 35
1688*de75638bSdrh  17  -  - 37  - 37
1689*de75638bSdrh  18  -  - 38  - 38
1690*de75638bSdrh  19  -  - 39 39 39
1691*de75638bSdrh}
1692*de75638bSdrhdo_execsql_test joinB-123 {
1693*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1694*de75638bSdrh  FROM t1
1695*de75638bSdrh  INNER JOIN t2 USING(a)
1696*de75638bSdrh  FULL JOIN t3 USING(a)
1697*de75638bSdrh  FULL JOIN t4 USING(a)
1698*de75638bSdrh  LEFT JOIN t5 USING(a)
1699*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1700*de75638bSdrh} {
1701*de75638bSdrh   -  -  -  -  -  -
1702*de75638bSdrh  11  -  - 11 11  -
1703*de75638bSdrh  12 12 12 12  -  -
1704*de75638bSdrh  13  -  - 13 13  -
1705*de75638bSdrh  15 15 15 15 15 15
1706*de75638bSdrh  17  -  - 17  - 17
1707*de75638bSdrh  18  -  - 18  - 18
1708*de75638bSdrh  19  -  - 19 19 19
1709*de75638bSdrh}
1710*de75638bSdrhdo_execsql_test joinB-124 {
1711*de75638bSdrh  SELECT a, c, d, e, f, g
1712*de75638bSdrh  FROM t1
1713*de75638bSdrh  INNER JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
1714*de75638bSdrh  FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
1715*de75638bSdrh  WHERE a<=18
1716*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1717*de75638bSdrh} {
1718*de75638bSdrh  11 31  - 31 31  -
1719*de75638bSdrh  12 32 32 32  -  -
1720*de75638bSdrh  13  -  -  - 33  -
1721*de75638bSdrh  15 35 35 35 35 35
1722*de75638bSdrh  17 37  - 37  -  -
1723*de75638bSdrh}
1724*de75638bSdrhdo_execsql_test joinB-125 {
1725*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1726*de75638bSdrh  FROM t1
1727*de75638bSdrh  INNER JOIN t2 USING(a)
1728*de75638bSdrh  FULL JOIN t3 USING(a)
1729*de75638bSdrh  FULL JOIN t4 USING(a)
1730*de75638bSdrh  RIGHT JOIN t5 USING(a)
1731*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1732*de75638bSdrh} {
1733*de75638bSdrh  15 15 15 15 15 15
1734*de75638bSdrh  17  -  - 17  - 17
1735*de75638bSdrh  18  -  - 18  - 18
1736*de75638bSdrh  19  -  - 19 19 19
1737*de75638bSdrh}
1738*de75638bSdrhdo_execsql_test joinB-126 {
1739*de75638bSdrh  SELECT a, b, c, d, e, f, g
1740*de75638bSdrh  FROM t1
1741*de75638bSdrh  INNER JOIN t2 USING(a,b)
1742*de75638bSdrh  FULL JOIN t3 USING(a,b)
1743*de75638bSdrh  FULL JOIN t4 USING(a,b)
1744*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
1745*de75638bSdrh  WHERE d<>33 OR d IS NULL
1746*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1747*de75638bSdrh} {
1748*de75638bSdrh  15 25 35 35 35 35 35
1749*de75638bSdrh  17 27  -  - 37  - 37
1750*de75638bSdrh  18 28  -  - 38  - 38
1751*de75638bSdrh  19 29  -  - 39 39 39
1752*de75638bSdrh}
1753*de75638bSdrhdo_execsql_test joinB-127 {
1754*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1755*de75638bSdrh  FROM t1
1756*de75638bSdrh  INNER JOIN t2 USING(a)
1757*de75638bSdrh  FULL JOIN t3 USING(a)
1758*de75638bSdrh  FULL JOIN t4 USING(a)
1759*de75638bSdrh  FULL JOIN t5 USING(a)
1760*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1761*de75638bSdrh} {
1762*de75638bSdrh   -  -  -  -  -  -
1763*de75638bSdrh  11  -  - 11 11  -
1764*de75638bSdrh  12 12 12 12  -  -
1765*de75638bSdrh  13  -  - 13 13  -
1766*de75638bSdrh  15 15 15 15 15 15
1767*de75638bSdrh  17  -  - 17  - 17
1768*de75638bSdrh  18  -  - 18  - 18
1769*de75638bSdrh  19  -  - 19 19 19
1770*de75638bSdrh}
1771*de75638bSdrhdo_execsql_test joinB-128 {
1772*de75638bSdrh  SELECT b, c, d, e, f, g
1773*de75638bSdrh  FROM t1
1774*de75638bSdrh  NATURAL INNER JOIN t2
1775*de75638bSdrh  NATURAL FULL JOIN t3
1776*de75638bSdrh  NATURAL FULL JOIN t4
1777*de75638bSdrh  NATURAL FULL JOIN t5
1778*de75638bSdrh  WHERE b BETWEEN 12 AND 17
1779*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1780*de75638bSdrh} {
1781*de75638bSdrh}
1782*de75638bSdrhdo_execsql_test joinB-129 {
1783*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1784*de75638bSdrh  FROM t1
1785*de75638bSdrh  LEFT JOIN t2 USING(a)
1786*de75638bSdrh  INNER JOIN t3 USING(a)
1787*de75638bSdrh  INNER JOIN t4 USING(a)
1788*de75638bSdrh  INNER JOIN t5 USING(a)
1789*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1790*de75638bSdrh} {
1791*de75638bSdrh  15 15 15 15 15 15
1792*de75638bSdrh}
1793*de75638bSdrhdo_execsql_test joinB-130 {
1794*de75638bSdrh  SELECT a, c, d, e, f, g
1795*de75638bSdrh  FROM t1
1796*de75638bSdrh  LEFT JOIN t2 USING(a,b)
1797*de75638bSdrh  INNER JOIN t3 USING(a,b)
1798*de75638bSdrh  INNER JOIN t4 USING(a,b)
1799*de75638bSdrh  INNER JOIN t5 USING(a,b)
1800*de75638bSdrh  WHERE a<>13
1801*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1802*de75638bSdrh} {
1803*de75638bSdrh  15 35 35 35 35 35
1804*de75638bSdrh}
1805*de75638bSdrhdo_execsql_test joinB-131 {
1806*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1807*de75638bSdrh  FROM t1
1808*de75638bSdrh  LEFT JOIN t2 USING(a)
1809*de75638bSdrh  INNER JOIN t3 USING(a)
1810*de75638bSdrh  INNER JOIN t4 USING(a)
1811*de75638bSdrh  LEFT JOIN t5 USING(a)
1812*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1813*de75638bSdrh} {
1814*de75638bSdrh  11 11  - 11 11  -
1815*de75638bSdrh  15 15 15 15 15 15
1816*de75638bSdrh}
1817*de75638bSdrhdo_execsql_test joinB-132 {
1818*de75638bSdrh  SELECT a, c, d, e, f, g
1819*de75638bSdrh  FROM t1
1820*de75638bSdrh  LEFT JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
1821*de75638bSdrh  INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
1822*de75638bSdrh  WHERE a<=18
1823*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1824*de75638bSdrh} {
1825*de75638bSdrh  11 31  -  - 31  -
1826*de75638bSdrh  15 35 35 35 35 35
1827*de75638bSdrh}
1828*de75638bSdrhdo_execsql_test joinB-133 {
1829*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1830*de75638bSdrh  FROM t1
1831*de75638bSdrh  LEFT JOIN t2 USING(a)
1832*de75638bSdrh  INNER JOIN t3 USING(a)
1833*de75638bSdrh  INNER JOIN t4 USING(a)
1834*de75638bSdrh  RIGHT JOIN t5 USING(a)
1835*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1836*de75638bSdrh} {
1837*de75638bSdrh  15 15 15 15 15 15
1838*de75638bSdrh  17  -  -  -  - 17
1839*de75638bSdrh  18  -  -  -  - 18
1840*de75638bSdrh  19  -  -  -  - 19
1841*de75638bSdrh}
1842*de75638bSdrhdo_execsql_test joinB-134 {
1843*de75638bSdrh  SELECT a, b, c, d, e, f, g
1844*de75638bSdrh  FROM t1
1845*de75638bSdrh  LEFT JOIN t2 USING(a,b)
1846*de75638bSdrh  INNER JOIN t3 USING(a,b)
1847*de75638bSdrh  INNER JOIN t4 USING(a,b)
1848*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
1849*de75638bSdrh  WHERE d<>33 OR d IS NULL
1850*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1851*de75638bSdrh} {
1852*de75638bSdrh  15 25 35 35 35 35 35
1853*de75638bSdrh  17 27  -  -  -  - 37
1854*de75638bSdrh  18 28  -  -  -  - 38
1855*de75638bSdrh  19 29  -  -  -  - 39
1856*de75638bSdrh}
1857*de75638bSdrhdo_execsql_test joinB-135 {
1858*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1859*de75638bSdrh  FROM t1
1860*de75638bSdrh  LEFT JOIN t2 USING(a)
1861*de75638bSdrh  INNER JOIN t3 USING(a)
1862*de75638bSdrh  INNER JOIN t4 USING(a)
1863*de75638bSdrh  FULL JOIN t5 USING(a)
1864*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1865*de75638bSdrh} {
1866*de75638bSdrh  11 11  - 11 11  -
1867*de75638bSdrh  15 15 15 15 15 15
1868*de75638bSdrh  17  -  -  -  - 17
1869*de75638bSdrh  18  -  -  -  - 18
1870*de75638bSdrh  19  -  -  -  - 19
1871*de75638bSdrh}
1872*de75638bSdrhdo_execsql_test joinB-136 {
1873*de75638bSdrh  SELECT b, c, d, e, f, g
1874*de75638bSdrh  FROM t1
1875*de75638bSdrh  NATURAL LEFT JOIN t2
1876*de75638bSdrh  NATURAL INNER JOIN t3
1877*de75638bSdrh  NATURAL INNER JOIN t4
1878*de75638bSdrh  NATURAL FULL JOIN t5
1879*de75638bSdrh  WHERE b BETWEEN 12 AND 17
1880*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1881*de75638bSdrh} {
1882*de75638bSdrh}
1883*de75638bSdrhdo_execsql_test joinB-137 {
1884*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1885*de75638bSdrh  FROM t1
1886*de75638bSdrh  LEFT JOIN t2 USING(a)
1887*de75638bSdrh  INNER JOIN t3 USING(a)
1888*de75638bSdrh  LEFT JOIN t4 USING(a)
1889*de75638bSdrh  INNER JOIN t5 USING(a)
1890*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1891*de75638bSdrh} {
1892*de75638bSdrh  15 15 15 15 15 15
1893*de75638bSdrh  17 17  - 17  - 17
1894*de75638bSdrh}
1895*de75638bSdrhdo_execsql_test joinB-138 {
1896*de75638bSdrh  SELECT a, c, d, e, f, g
1897*de75638bSdrh  FROM t1
1898*de75638bSdrh  LEFT JOIN t2 USING(a,b)
1899*de75638bSdrh  INNER JOIN t3 USING(a,b)
1900*de75638bSdrh  LEFT JOIN t4 USING(a,b)
1901*de75638bSdrh  INNER JOIN t5 USING(a,b)
1902*de75638bSdrh  WHERE a<>13
1903*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1904*de75638bSdrh} {
1905*de75638bSdrh  15 35 35 35 35 35
1906*de75638bSdrh  17 37  - 37  - 37
1907*de75638bSdrh}
1908*de75638bSdrhdo_execsql_test joinB-139 {
1909*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1910*de75638bSdrh  FROM t1
1911*de75638bSdrh  LEFT JOIN t2 USING(a)
1912*de75638bSdrh  INNER JOIN t3 USING(a)
1913*de75638bSdrh  LEFT JOIN t4 USING(a)
1914*de75638bSdrh  LEFT JOIN t5 USING(a)
1915*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1916*de75638bSdrh} {
1917*de75638bSdrh  11 11  - 11 11  -
1918*de75638bSdrh  12 12 12 12  -  -
1919*de75638bSdrh  15 15 15 15 15 15
1920*de75638bSdrh  17 17  - 17  - 17
1921*de75638bSdrh}
1922*de75638bSdrhdo_execsql_test joinB-140 {
1923*de75638bSdrh  SELECT a, c, d, e, f, g
1924*de75638bSdrh  FROM t1
1925*de75638bSdrh  LEFT JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
1926*de75638bSdrh  LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
1927*de75638bSdrh  WHERE a<=18
1928*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1929*de75638bSdrh} {
1930*de75638bSdrh  11 31  -  - 31  -
1931*de75638bSdrh  12 32 32 32  -  -
1932*de75638bSdrh  15 35 35 35 35 35
1933*de75638bSdrh  17 37  -  -  -  -
1934*de75638bSdrh}
1935*de75638bSdrhdo_execsql_test joinB-141 {
1936*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1937*de75638bSdrh  FROM t1
1938*de75638bSdrh  LEFT JOIN t2 USING(a)
1939*de75638bSdrh  INNER JOIN t3 USING(a)
1940*de75638bSdrh  LEFT JOIN t4 USING(a)
1941*de75638bSdrh  RIGHT JOIN t5 USING(a)
1942*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1943*de75638bSdrh} {
1944*de75638bSdrh  15 15 15 15 15 15
1945*de75638bSdrh  17 17  - 17  - 17
1946*de75638bSdrh  18  -  -  -  - 18
1947*de75638bSdrh  19  -  -  -  - 19
1948*de75638bSdrh}
1949*de75638bSdrhdo_execsql_test joinB-142 {
1950*de75638bSdrh  SELECT a, b, c, d, e, f, g
1951*de75638bSdrh  FROM t1
1952*de75638bSdrh  LEFT JOIN t2 USING(a,b)
1953*de75638bSdrh  INNER JOIN t3 USING(a,b)
1954*de75638bSdrh  LEFT JOIN t4 USING(a,b)
1955*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
1956*de75638bSdrh  WHERE d<>33 OR d IS NULL
1957*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1958*de75638bSdrh} {
1959*de75638bSdrh  15 25 35 35 35 35 35
1960*de75638bSdrh  17 27 37  - 37  - 37
1961*de75638bSdrh  18 28  -  -  -  - 38
1962*de75638bSdrh  19 29  -  -  -  - 39
1963*de75638bSdrh}
1964*de75638bSdrhdo_execsql_test joinB-143 {
1965*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1966*de75638bSdrh  FROM t1
1967*de75638bSdrh  LEFT JOIN t2 USING(a)
1968*de75638bSdrh  INNER JOIN t3 USING(a)
1969*de75638bSdrh  LEFT JOIN t4 USING(a)
1970*de75638bSdrh  FULL JOIN t5 USING(a)
1971*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1972*de75638bSdrh} {
1973*de75638bSdrh  11 11  - 11 11  -
1974*de75638bSdrh  12 12 12 12  -  -
1975*de75638bSdrh  15 15 15 15 15 15
1976*de75638bSdrh  17 17  - 17  - 17
1977*de75638bSdrh  18  -  -  -  - 18
1978*de75638bSdrh  19  -  -  -  - 19
1979*de75638bSdrh}
1980*de75638bSdrhdo_execsql_test joinB-144 {
1981*de75638bSdrh  SELECT b, c, d, e, f, g
1982*de75638bSdrh  FROM t1
1983*de75638bSdrh  NATURAL LEFT JOIN t2
1984*de75638bSdrh  NATURAL INNER JOIN t3
1985*de75638bSdrh  NATURAL LEFT JOIN t4
1986*de75638bSdrh  NATURAL FULL JOIN t5
1987*de75638bSdrh  WHERE b BETWEEN 12 AND 17
1988*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1989*de75638bSdrh} {
1990*de75638bSdrh}
1991*de75638bSdrhdo_execsql_test joinB-145 {
1992*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
1993*de75638bSdrh  FROM t1
1994*de75638bSdrh  LEFT JOIN t2 USING(a)
1995*de75638bSdrh  INNER JOIN t3 USING(a)
1996*de75638bSdrh  RIGHT JOIN t4 USING(a)
1997*de75638bSdrh  INNER JOIN t5 USING(a)
1998*de75638bSdrh  ORDER BY 1 NULLS FIRST;
1999*de75638bSdrh} {
2000*de75638bSdrh  15 15 15 15 15 15
2001*de75638bSdrh  19  -  -  - 19 19
2002*de75638bSdrh}
2003*de75638bSdrhdo_execsql_test joinB-146 {
2004*de75638bSdrh  SELECT a, c, d, e, f, g
2005*de75638bSdrh  FROM t1
2006*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2007*de75638bSdrh  INNER JOIN t3 USING(a,b)
2008*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
2009*de75638bSdrh  INNER JOIN t5 USING(a,b)
2010*de75638bSdrh  WHERE a<>13
2011*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2012*de75638bSdrh} {
2013*de75638bSdrh  15 35 35 35 35 35
2014*de75638bSdrh  19  -  -  - 39 39
2015*de75638bSdrh}
2016*de75638bSdrhdo_execsql_test joinB-147 {
2017*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2018*de75638bSdrh  FROM t1
2019*de75638bSdrh  LEFT JOIN t2 USING(a)
2020*de75638bSdrh  INNER JOIN t3 USING(a)
2021*de75638bSdrh  RIGHT JOIN t4 USING(a)
2022*de75638bSdrh  LEFT JOIN t5 USING(a)
2023*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2024*de75638bSdrh} {
2025*de75638bSdrh  11 11  - 11 11  -
2026*de75638bSdrh  13  -  -  - 13  -
2027*de75638bSdrh  15 15 15 15 15 15
2028*de75638bSdrh  19  -  -  - 19 19
2029*de75638bSdrh}
2030*de75638bSdrhdo_execsql_test joinB-148 {
2031*de75638bSdrh  SELECT a, c, d, e, f, g
2032*de75638bSdrh  FROM t1
2033*de75638bSdrh  LEFT JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
2034*de75638bSdrh  RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
2035*de75638bSdrh  WHERE a<=18
2036*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2037*de75638bSdrh} {
2038*de75638bSdrh  11 31  -  - 31  -
2039*de75638bSdrh  13  -  -  - 33  -
2040*de75638bSdrh  15 35 35 35 35 35
2041*de75638bSdrh}
2042*de75638bSdrhdo_execsql_test joinB-149 {
2043*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2044*de75638bSdrh  FROM t1
2045*de75638bSdrh  LEFT JOIN t2 USING(a)
2046*de75638bSdrh  INNER JOIN t3 USING(a)
2047*de75638bSdrh  RIGHT JOIN t4 USING(a)
2048*de75638bSdrh  RIGHT JOIN t5 USING(a)
2049*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2050*de75638bSdrh} {
2051*de75638bSdrh  15 15 15 15 15 15
2052*de75638bSdrh  17  -  -  -  - 17
2053*de75638bSdrh  18  -  -  -  - 18
2054*de75638bSdrh  19  -  -  - 19 19
2055*de75638bSdrh}
2056*de75638bSdrhdo_execsql_test joinB-150 {
2057*de75638bSdrh  SELECT a, b, c, d, e, f, g
2058*de75638bSdrh  FROM t1
2059*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2060*de75638bSdrh  INNER JOIN t3 USING(a,b)
2061*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
2062*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
2063*de75638bSdrh  WHERE d<>33 OR d IS NULL
2064*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2065*de75638bSdrh} {
2066*de75638bSdrh  15 25 35 35 35 35 35
2067*de75638bSdrh  17 27  -  -  -  - 37
2068*de75638bSdrh  18 28  -  -  -  - 38
2069*de75638bSdrh  19 29  -  -  - 39 39
2070*de75638bSdrh}
2071*de75638bSdrhdo_execsql_test joinB-151 {
2072*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2073*de75638bSdrh  FROM t1
2074*de75638bSdrh  LEFT JOIN t2 USING(a)
2075*de75638bSdrh  INNER JOIN t3 USING(a)
2076*de75638bSdrh  RIGHT JOIN t4 USING(a)
2077*de75638bSdrh  FULL JOIN t5 USING(a)
2078*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2079*de75638bSdrh} {
2080*de75638bSdrh  11 11  - 11 11  -
2081*de75638bSdrh  13  -  -  - 13  -
2082*de75638bSdrh  15 15 15 15 15 15
2083*de75638bSdrh  17  -  -  -  - 17
2084*de75638bSdrh  18  -  -  -  - 18
2085*de75638bSdrh  19  -  -  - 19 19
2086*de75638bSdrh}
2087*de75638bSdrhdo_execsql_test joinB-152 {
2088*de75638bSdrh  SELECT b, c, d, e, f, g
2089*de75638bSdrh  FROM t1
2090*de75638bSdrh  NATURAL LEFT JOIN t2
2091*de75638bSdrh  NATURAL INNER JOIN t3
2092*de75638bSdrh  NATURAL RIGHT JOIN t4
2093*de75638bSdrh  NATURAL FULL JOIN t5
2094*de75638bSdrh  WHERE b BETWEEN 12 AND 17
2095*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2096*de75638bSdrh} {
2097*de75638bSdrh}
2098*de75638bSdrhdo_execsql_test joinB-153 {
2099*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2100*de75638bSdrh  FROM t1
2101*de75638bSdrh  LEFT JOIN t2 USING(a)
2102*de75638bSdrh  INNER JOIN t3 USING(a)
2103*de75638bSdrh  FULL JOIN t4 USING(a)
2104*de75638bSdrh  INNER JOIN t5 USING(a)
2105*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2106*de75638bSdrh} {
2107*de75638bSdrh  15 15 15 15 15 15
2108*de75638bSdrh  17 17  - 17  - 17
2109*de75638bSdrh  19  -  -  - 19 19
2110*de75638bSdrh}
2111*de75638bSdrhdo_execsql_test joinB-154 {
2112*de75638bSdrh  SELECT a, c, d, e, f, g
2113*de75638bSdrh  FROM t1
2114*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2115*de75638bSdrh  INNER JOIN t3 USING(a,b)
2116*de75638bSdrh  FULL JOIN t4 USING(a,b)
2117*de75638bSdrh  INNER JOIN t5 USING(a,b)
2118*de75638bSdrh  WHERE a<>13
2119*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2120*de75638bSdrh} {
2121*de75638bSdrh  15 35 35 35 35 35
2122*de75638bSdrh  17 37  - 37  - 37
2123*de75638bSdrh  19  -  -  - 39 39
2124*de75638bSdrh}
2125*de75638bSdrhdo_execsql_test joinB-155 {
2126*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2127*de75638bSdrh  FROM t1
2128*de75638bSdrh  LEFT JOIN t2 USING(a)
2129*de75638bSdrh  INNER JOIN t3 USING(a)
2130*de75638bSdrh  FULL JOIN t4 USING(a)
2131*de75638bSdrh  LEFT JOIN t5 USING(a)
2132*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2133*de75638bSdrh} {
2134*de75638bSdrh  11 11  - 11 11  -
2135*de75638bSdrh  12 12 12 12  -  -
2136*de75638bSdrh  13  -  -  - 13  -
2137*de75638bSdrh  15 15 15 15 15 15
2138*de75638bSdrh  17 17  - 17  - 17
2139*de75638bSdrh  19  -  -  - 19 19
2140*de75638bSdrh}
2141*de75638bSdrhdo_execsql_test joinB-156 {
2142*de75638bSdrh  SELECT a, c, d, e, f, g
2143*de75638bSdrh  FROM t1
2144*de75638bSdrh  LEFT JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
2145*de75638bSdrh  FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
2146*de75638bSdrh  WHERE a<=18
2147*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2148*de75638bSdrh} {
2149*de75638bSdrh  11 31  -  - 31  -
2150*de75638bSdrh  12 32 32 32  -  -
2151*de75638bSdrh  13  -  -  - 33  -
2152*de75638bSdrh  15 35 35 35 35 35
2153*de75638bSdrh  17 37  -  -  -  -
2154*de75638bSdrh}
2155*de75638bSdrhdo_execsql_test joinB-157 {
2156*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2157*de75638bSdrh  FROM t1
2158*de75638bSdrh  LEFT JOIN t2 USING(a)
2159*de75638bSdrh  INNER JOIN t3 USING(a)
2160*de75638bSdrh  FULL JOIN t4 USING(a)
2161*de75638bSdrh  RIGHT JOIN t5 USING(a)
2162*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2163*de75638bSdrh} {
2164*de75638bSdrh  15 15 15 15 15 15
2165*de75638bSdrh  17 17  - 17  - 17
2166*de75638bSdrh  18  -  -  -  - 18
2167*de75638bSdrh  19  -  -  - 19 19
2168*de75638bSdrh}
2169*de75638bSdrhdo_execsql_test joinB-158 {
2170*de75638bSdrh  SELECT a, b, c, d, e, f, g
2171*de75638bSdrh  FROM t1
2172*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2173*de75638bSdrh  INNER JOIN t3 USING(a,b)
2174*de75638bSdrh  FULL JOIN t4 USING(a,b)
2175*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
2176*de75638bSdrh  WHERE d<>33 OR d IS NULL
2177*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2178*de75638bSdrh} {
2179*de75638bSdrh  15 25 35 35 35 35 35
2180*de75638bSdrh  17 27 37  - 37  - 37
2181*de75638bSdrh  18 28  -  -  -  - 38
2182*de75638bSdrh  19 29  -  -  - 39 39
2183*de75638bSdrh}
2184*de75638bSdrhdo_execsql_test joinB-159 {
2185*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2186*de75638bSdrh  FROM t1
2187*de75638bSdrh  LEFT JOIN t2 USING(a)
2188*de75638bSdrh  INNER JOIN t3 USING(a)
2189*de75638bSdrh  FULL JOIN t4 USING(a)
2190*de75638bSdrh  FULL JOIN t5 USING(a)
2191*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2192*de75638bSdrh} {
2193*de75638bSdrh  11 11  - 11 11  -
2194*de75638bSdrh  12 12 12 12  -  -
2195*de75638bSdrh  13  -  -  - 13  -
2196*de75638bSdrh  15 15 15 15 15 15
2197*de75638bSdrh  17 17  - 17  - 17
2198*de75638bSdrh  18  -  -  -  - 18
2199*de75638bSdrh  19  -  -  - 19 19
2200*de75638bSdrh}
2201*de75638bSdrhdo_execsql_test joinB-160 {
2202*de75638bSdrh  SELECT b, c, d, e, f, g
2203*de75638bSdrh  FROM t1
2204*de75638bSdrh  NATURAL LEFT JOIN t2
2205*de75638bSdrh  NATURAL INNER JOIN t3
2206*de75638bSdrh  NATURAL FULL JOIN t4
2207*de75638bSdrh  NATURAL FULL JOIN t5
2208*de75638bSdrh  WHERE b BETWEEN 12 AND 17
2209*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2210*de75638bSdrh} {
2211*de75638bSdrh}
2212*de75638bSdrhdo_execsql_test joinB-161 {
2213*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2214*de75638bSdrh  FROM t1
2215*de75638bSdrh  LEFT JOIN t2 USING(a)
2216*de75638bSdrh  LEFT JOIN t3 USING(a)
2217*de75638bSdrh  INNER JOIN t4 USING(a)
2218*de75638bSdrh  INNER JOIN t5 USING(a)
2219*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2220*de75638bSdrh} {
2221*de75638bSdrh  15 15 15 15 15 15
2222*de75638bSdrh}
2223*de75638bSdrhdo_execsql_test joinB-162 {
2224*de75638bSdrh  SELECT a, c, d, e, f, g
2225*de75638bSdrh  FROM t1
2226*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2227*de75638bSdrh  LEFT JOIN t3 USING(a,b)
2228*de75638bSdrh  INNER JOIN t4 USING(a,b)
2229*de75638bSdrh  INNER JOIN t5 USING(a,b)
2230*de75638bSdrh  WHERE a<>13
2231*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2232*de75638bSdrh} {
2233*de75638bSdrh  15 35 35 35 35 35
2234*de75638bSdrh}
2235*de75638bSdrhdo_execsql_test joinB-163 {
2236*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2237*de75638bSdrh  FROM t1
2238*de75638bSdrh  LEFT JOIN t2 USING(a)
2239*de75638bSdrh  LEFT JOIN t3 USING(a)
2240*de75638bSdrh  INNER JOIN t4 USING(a)
2241*de75638bSdrh  LEFT JOIN t5 USING(a)
2242*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2243*de75638bSdrh} {
2244*de75638bSdrh  11 11  - 11 11  -
2245*de75638bSdrh  15 15 15 15 15 15
2246*de75638bSdrh}
2247*de75638bSdrhdo_execsql_test joinB-164 {
2248*de75638bSdrh  SELECT a, c, d, e, f, g
2249*de75638bSdrh  FROM t1
2250*de75638bSdrh  LEFT JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
2251*de75638bSdrh  INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
2252*de75638bSdrh  WHERE a<=18
2253*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2254*de75638bSdrh} {
2255*de75638bSdrh  11 31  -  - 31  -
2256*de75638bSdrh  15 35 35 35 35 35
2257*de75638bSdrh}
2258*de75638bSdrhdo_execsql_test joinB-165 {
2259*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2260*de75638bSdrh  FROM t1
2261*de75638bSdrh  LEFT JOIN t2 USING(a)
2262*de75638bSdrh  LEFT JOIN t3 USING(a)
2263*de75638bSdrh  INNER JOIN t4 USING(a)
2264*de75638bSdrh  RIGHT JOIN t5 USING(a)
2265*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2266*de75638bSdrh} {
2267*de75638bSdrh  15 15 15 15 15 15
2268*de75638bSdrh  17  -  -  -  - 17
2269*de75638bSdrh  18  -  -  -  - 18
2270*de75638bSdrh  19  -  -  -  - 19
2271*de75638bSdrh}
2272*de75638bSdrhdo_execsql_test joinB-166 {
2273*de75638bSdrh  SELECT a, b, c, d, e, f, g
2274*de75638bSdrh  FROM t1
2275*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2276*de75638bSdrh  LEFT JOIN t3 USING(a,b)
2277*de75638bSdrh  INNER JOIN t4 USING(a,b)
2278*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
2279*de75638bSdrh  WHERE d<>33 OR d IS NULL
2280*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2281*de75638bSdrh} {
2282*de75638bSdrh  15 25 35 35 35 35 35
2283*de75638bSdrh  17 27  -  -  -  - 37
2284*de75638bSdrh  18 28  -  -  -  - 38
2285*de75638bSdrh  19 29  -  -  -  - 39
2286*de75638bSdrh}
2287*de75638bSdrhdo_execsql_test joinB-167 {
2288*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2289*de75638bSdrh  FROM t1
2290*de75638bSdrh  LEFT JOIN t2 USING(a)
2291*de75638bSdrh  LEFT JOIN t3 USING(a)
2292*de75638bSdrh  INNER JOIN t4 USING(a)
2293*de75638bSdrh  FULL JOIN t5 USING(a)
2294*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2295*de75638bSdrh} {
2296*de75638bSdrh  11 11  - 11 11  -
2297*de75638bSdrh  15 15 15 15 15 15
2298*de75638bSdrh  17  -  -  -  - 17
2299*de75638bSdrh  18  -  -  -  - 18
2300*de75638bSdrh  19  -  -  -  - 19
2301*de75638bSdrh}
2302*de75638bSdrhdo_execsql_test joinB-168 {
2303*de75638bSdrh  SELECT b, c, d, e, f, g
2304*de75638bSdrh  FROM t1
2305*de75638bSdrh  NATURAL LEFT JOIN t2
2306*de75638bSdrh  NATURAL LEFT JOIN t3
2307*de75638bSdrh  NATURAL INNER JOIN t4
2308*de75638bSdrh  NATURAL FULL JOIN t5
2309*de75638bSdrh  WHERE b BETWEEN 12 AND 17
2310*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2311*de75638bSdrh} {
2312*de75638bSdrh}
2313*de75638bSdrhdo_execsql_test joinB-169 {
2314*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2315*de75638bSdrh  FROM t1
2316*de75638bSdrh  LEFT JOIN t2 USING(a)
2317*de75638bSdrh  LEFT JOIN t3 USING(a)
2318*de75638bSdrh  LEFT JOIN t4 USING(a)
2319*de75638bSdrh  INNER JOIN t5 USING(a)
2320*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2321*de75638bSdrh} {
2322*de75638bSdrh  15 15 15 15 15 15
2323*de75638bSdrh  17 17  - 17  - 17
2324*de75638bSdrh}
2325*de75638bSdrhdo_execsql_test joinB-170 {
2326*de75638bSdrh  SELECT a, c, d, e, f, g
2327*de75638bSdrh  FROM t1
2328*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2329*de75638bSdrh  LEFT JOIN t3 USING(a,b)
2330*de75638bSdrh  LEFT JOIN t4 USING(a,b)
2331*de75638bSdrh  INNER JOIN t5 USING(a,b)
2332*de75638bSdrh  WHERE a<>13
2333*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2334*de75638bSdrh} {
2335*de75638bSdrh  15 35 35 35 35 35
2336*de75638bSdrh  17 37  - 37  - 37
2337*de75638bSdrh}
2338*de75638bSdrhdo_execsql_test joinB-171 {
2339*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2340*de75638bSdrh  FROM t1
2341*de75638bSdrh  LEFT JOIN t2 USING(a)
2342*de75638bSdrh  LEFT JOIN t3 USING(a)
2343*de75638bSdrh  LEFT JOIN t4 USING(a)
2344*de75638bSdrh  LEFT JOIN t5 USING(a)
2345*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2346*de75638bSdrh} {
2347*de75638bSdrh  11 11  - 11 11  -
2348*de75638bSdrh  12 12 12 12  -  -
2349*de75638bSdrh  15 15 15 15 15 15
2350*de75638bSdrh  17 17  - 17  - 17
2351*de75638bSdrh}
2352*de75638bSdrhdo_execsql_test joinB-172 {
2353*de75638bSdrh  SELECT a, c, d, e, f, g
2354*de75638bSdrh  FROM t1
2355*de75638bSdrh  LEFT JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
2356*de75638bSdrh  LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
2357*de75638bSdrh  WHERE a<=18
2358*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2359*de75638bSdrh} {
2360*de75638bSdrh  11 31  -  - 31  -
2361*de75638bSdrh  12 32 32 32  -  -
2362*de75638bSdrh  15 35 35 35 35 35
2363*de75638bSdrh  17 37  -  -  -  -
2364*de75638bSdrh}
2365*de75638bSdrhdo_execsql_test joinB-173 {
2366*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2367*de75638bSdrh  FROM t1
2368*de75638bSdrh  LEFT JOIN t2 USING(a)
2369*de75638bSdrh  LEFT JOIN t3 USING(a)
2370*de75638bSdrh  LEFT JOIN t4 USING(a)
2371*de75638bSdrh  RIGHT JOIN t5 USING(a)
2372*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2373*de75638bSdrh} {
2374*de75638bSdrh  15 15 15 15 15 15
2375*de75638bSdrh  17 17  - 17  - 17
2376*de75638bSdrh  18  -  -  -  - 18
2377*de75638bSdrh  19  -  -  -  - 19
2378*de75638bSdrh}
2379*de75638bSdrhdo_execsql_test joinB-174 {
2380*de75638bSdrh  SELECT a, b, c, d, e, f, g
2381*de75638bSdrh  FROM t1
2382*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2383*de75638bSdrh  LEFT JOIN t3 USING(a,b)
2384*de75638bSdrh  LEFT JOIN t4 USING(a,b)
2385*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
2386*de75638bSdrh  WHERE d<>33 OR d IS NULL
2387*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2388*de75638bSdrh} {
2389*de75638bSdrh  15 25 35 35 35 35 35
2390*de75638bSdrh  17 27 37  - 37  - 37
2391*de75638bSdrh  18 28  -  -  -  - 38
2392*de75638bSdrh  19 29  -  -  -  - 39
2393*de75638bSdrh}
2394*de75638bSdrhdo_execsql_test joinB-175 {
2395*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2396*de75638bSdrh  FROM t1
2397*de75638bSdrh  LEFT JOIN t2 USING(a)
2398*de75638bSdrh  LEFT JOIN t3 USING(a)
2399*de75638bSdrh  LEFT JOIN t4 USING(a)
2400*de75638bSdrh  FULL JOIN t5 USING(a)
2401*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2402*de75638bSdrh} {
2403*de75638bSdrh  11 11  - 11 11  -
2404*de75638bSdrh  12 12 12 12  -  -
2405*de75638bSdrh  15 15 15 15 15 15
2406*de75638bSdrh  17 17  - 17  - 17
2407*de75638bSdrh  18  -  -  -  - 18
2408*de75638bSdrh  19  -  -  -  - 19
2409*de75638bSdrh}
2410*de75638bSdrhdo_execsql_test joinB-176 {
2411*de75638bSdrh  SELECT b, c, d, e, f, g
2412*de75638bSdrh  FROM t1
2413*de75638bSdrh  NATURAL LEFT JOIN t2
2414*de75638bSdrh  NATURAL LEFT JOIN t3
2415*de75638bSdrh  NATURAL LEFT JOIN t4
2416*de75638bSdrh  NATURAL FULL JOIN t5
2417*de75638bSdrh  WHERE b BETWEEN 12 AND 17
2418*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2419*de75638bSdrh} {
2420*de75638bSdrh}
2421*de75638bSdrhdo_execsql_test joinB-177 {
2422*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2423*de75638bSdrh  FROM t1
2424*de75638bSdrh  LEFT JOIN t2 USING(a)
2425*de75638bSdrh  LEFT JOIN t3 USING(a)
2426*de75638bSdrh  RIGHT JOIN t4 USING(a)
2427*de75638bSdrh  INNER JOIN t5 USING(a)
2428*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2429*de75638bSdrh} {
2430*de75638bSdrh  15 15 15 15 15 15
2431*de75638bSdrh  19  -  -  - 19 19
2432*de75638bSdrh}
2433*de75638bSdrhdo_execsql_test joinB-178 {
2434*de75638bSdrh  SELECT a, c, d, e, f, g
2435*de75638bSdrh  FROM t1
2436*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2437*de75638bSdrh  LEFT JOIN t3 USING(a,b)
2438*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
2439*de75638bSdrh  INNER JOIN t5 USING(a,b)
2440*de75638bSdrh  WHERE a<>13
2441*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2442*de75638bSdrh} {
2443*de75638bSdrh  15 35 35 35 35 35
2444*de75638bSdrh  19  -  -  - 39 39
2445*de75638bSdrh}
2446*de75638bSdrhdo_execsql_test joinB-179 {
2447*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2448*de75638bSdrh  FROM t1
2449*de75638bSdrh  LEFT JOIN t2 USING(a)
2450*de75638bSdrh  LEFT JOIN t3 USING(a)
2451*de75638bSdrh  RIGHT JOIN t4 USING(a)
2452*de75638bSdrh  LEFT JOIN t5 USING(a)
2453*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2454*de75638bSdrh} {
2455*de75638bSdrh  11 11  - 11 11  -
2456*de75638bSdrh  13  -  -  - 13  -
2457*de75638bSdrh  15 15 15 15 15 15
2458*de75638bSdrh  19  -  -  - 19 19
2459*de75638bSdrh}
2460*de75638bSdrhdo_execsql_test joinB-180 {
2461*de75638bSdrh  SELECT a, c, d, e, f, g
2462*de75638bSdrh  FROM t1
2463*de75638bSdrh  LEFT JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
2464*de75638bSdrh  RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
2465*de75638bSdrh  WHERE a<=18
2466*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2467*de75638bSdrh} {
2468*de75638bSdrh  11 31  -  - 31  -
2469*de75638bSdrh  13  -  -  - 33  -
2470*de75638bSdrh  15 35 35 35 35 35
2471*de75638bSdrh}
2472*de75638bSdrhdo_execsql_test joinB-181 {
2473*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2474*de75638bSdrh  FROM t1
2475*de75638bSdrh  LEFT JOIN t2 USING(a)
2476*de75638bSdrh  LEFT JOIN t3 USING(a)
2477*de75638bSdrh  RIGHT JOIN t4 USING(a)
2478*de75638bSdrh  RIGHT JOIN t5 USING(a)
2479*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2480*de75638bSdrh} {
2481*de75638bSdrh  15 15 15 15 15 15
2482*de75638bSdrh  17  -  -  -  - 17
2483*de75638bSdrh  18  -  -  -  - 18
2484*de75638bSdrh  19  -  -  - 19 19
2485*de75638bSdrh}
2486*de75638bSdrhdo_execsql_test joinB-182 {
2487*de75638bSdrh  SELECT a, b, c, d, e, f, g
2488*de75638bSdrh  FROM t1
2489*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2490*de75638bSdrh  LEFT JOIN t3 USING(a,b)
2491*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
2492*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
2493*de75638bSdrh  WHERE d<>33 OR d IS NULL
2494*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2495*de75638bSdrh} {
2496*de75638bSdrh  15 25 35 35 35 35 35
2497*de75638bSdrh  17 27  -  -  -  - 37
2498*de75638bSdrh  18 28  -  -  -  - 38
2499*de75638bSdrh  19 29  -  -  - 39 39
2500*de75638bSdrh}
2501*de75638bSdrhdo_execsql_test joinB-183 {
2502*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2503*de75638bSdrh  FROM t1
2504*de75638bSdrh  LEFT JOIN t2 USING(a)
2505*de75638bSdrh  LEFT JOIN t3 USING(a)
2506*de75638bSdrh  RIGHT JOIN t4 USING(a)
2507*de75638bSdrh  FULL JOIN t5 USING(a)
2508*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2509*de75638bSdrh} {
2510*de75638bSdrh  11 11  - 11 11  -
2511*de75638bSdrh  13  -  -  - 13  -
2512*de75638bSdrh  15 15 15 15 15 15
2513*de75638bSdrh  17  -  -  -  - 17
2514*de75638bSdrh  18  -  -  -  - 18
2515*de75638bSdrh  19  -  -  - 19 19
2516*de75638bSdrh}
2517*de75638bSdrhdo_execsql_test joinB-184 {
2518*de75638bSdrh  SELECT b, c, d, e, f, g
2519*de75638bSdrh  FROM t1
2520*de75638bSdrh  NATURAL LEFT JOIN t2
2521*de75638bSdrh  NATURAL LEFT JOIN t3
2522*de75638bSdrh  NATURAL RIGHT JOIN t4
2523*de75638bSdrh  NATURAL FULL JOIN t5
2524*de75638bSdrh  WHERE b BETWEEN 12 AND 17
2525*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2526*de75638bSdrh} {
2527*de75638bSdrh}
2528*de75638bSdrhdo_execsql_test joinB-185 {
2529*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2530*de75638bSdrh  FROM t1
2531*de75638bSdrh  LEFT JOIN t2 USING(a)
2532*de75638bSdrh  LEFT JOIN t3 USING(a)
2533*de75638bSdrh  FULL JOIN t4 USING(a)
2534*de75638bSdrh  INNER JOIN t5 USING(a)
2535*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2536*de75638bSdrh} {
2537*de75638bSdrh  15 15 15 15 15 15
2538*de75638bSdrh  17 17  - 17  - 17
2539*de75638bSdrh  19  -  -  - 19 19
2540*de75638bSdrh}
2541*de75638bSdrhdo_execsql_test joinB-186 {
2542*de75638bSdrh  SELECT a, c, d, e, f, g
2543*de75638bSdrh  FROM t1
2544*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2545*de75638bSdrh  LEFT JOIN t3 USING(a,b)
2546*de75638bSdrh  FULL JOIN t4 USING(a,b)
2547*de75638bSdrh  INNER JOIN t5 USING(a,b)
2548*de75638bSdrh  WHERE a<>13
2549*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2550*de75638bSdrh} {
2551*de75638bSdrh  15 35 35 35 35 35
2552*de75638bSdrh  17 37  - 37  - 37
2553*de75638bSdrh  19  -  -  - 39 39
2554*de75638bSdrh}
2555*de75638bSdrhdo_execsql_test joinB-187 {
2556*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2557*de75638bSdrh  FROM t1
2558*de75638bSdrh  LEFT JOIN t2 USING(a)
2559*de75638bSdrh  LEFT JOIN t3 USING(a)
2560*de75638bSdrh  FULL JOIN t4 USING(a)
2561*de75638bSdrh  LEFT JOIN t5 USING(a)
2562*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2563*de75638bSdrh} {
2564*de75638bSdrh  11 11  - 11 11  -
2565*de75638bSdrh  12 12 12 12  -  -
2566*de75638bSdrh  13  -  -  - 13  -
2567*de75638bSdrh  15 15 15 15 15 15
2568*de75638bSdrh  17 17  - 17  - 17
2569*de75638bSdrh  19  -  -  - 19 19
2570*de75638bSdrh}
2571*de75638bSdrhdo_execsql_test joinB-188 {
2572*de75638bSdrh  SELECT a, c, d, e, f, g
2573*de75638bSdrh  FROM t1
2574*de75638bSdrh  LEFT JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
2575*de75638bSdrh  FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
2576*de75638bSdrh  WHERE a<=18
2577*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2578*de75638bSdrh} {
2579*de75638bSdrh  11 31  -  - 31  -
2580*de75638bSdrh  12 32 32 32  -  -
2581*de75638bSdrh  13  -  -  - 33  -
2582*de75638bSdrh  15 35 35 35 35 35
2583*de75638bSdrh  17 37  -  -  -  -
2584*de75638bSdrh}
2585*de75638bSdrhdo_execsql_test joinB-189 {
2586*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2587*de75638bSdrh  FROM t1
2588*de75638bSdrh  LEFT JOIN t2 USING(a)
2589*de75638bSdrh  LEFT JOIN t3 USING(a)
2590*de75638bSdrh  FULL JOIN t4 USING(a)
2591*de75638bSdrh  RIGHT JOIN t5 USING(a)
2592*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2593*de75638bSdrh} {
2594*de75638bSdrh  15 15 15 15 15 15
2595*de75638bSdrh  17 17  - 17  - 17
2596*de75638bSdrh  18  -  -  -  - 18
2597*de75638bSdrh  19  -  -  - 19 19
2598*de75638bSdrh}
2599*de75638bSdrhdo_execsql_test joinB-190 {
2600*de75638bSdrh  SELECT a, b, c, d, e, f, g
2601*de75638bSdrh  FROM t1
2602*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2603*de75638bSdrh  LEFT JOIN t3 USING(a,b)
2604*de75638bSdrh  FULL JOIN t4 USING(a,b)
2605*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
2606*de75638bSdrh  WHERE d<>33 OR d IS NULL
2607*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2608*de75638bSdrh} {
2609*de75638bSdrh  15 25 35 35 35 35 35
2610*de75638bSdrh  17 27 37  - 37  - 37
2611*de75638bSdrh  18 28  -  -  -  - 38
2612*de75638bSdrh  19 29  -  -  - 39 39
2613*de75638bSdrh}
2614*de75638bSdrhdo_execsql_test joinB-191 {
2615*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2616*de75638bSdrh  FROM t1
2617*de75638bSdrh  LEFT JOIN t2 USING(a)
2618*de75638bSdrh  LEFT JOIN t3 USING(a)
2619*de75638bSdrh  FULL JOIN t4 USING(a)
2620*de75638bSdrh  FULL JOIN t5 USING(a)
2621*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2622*de75638bSdrh} {
2623*de75638bSdrh  11 11  - 11 11  -
2624*de75638bSdrh  12 12 12 12  -  -
2625*de75638bSdrh  13  -  -  - 13  -
2626*de75638bSdrh  15 15 15 15 15 15
2627*de75638bSdrh  17 17  - 17  - 17
2628*de75638bSdrh  18  -  -  -  - 18
2629*de75638bSdrh  19  -  -  - 19 19
2630*de75638bSdrh}
2631*de75638bSdrhdo_execsql_test joinB-192 {
2632*de75638bSdrh  SELECT b, c, d, e, f, g
2633*de75638bSdrh  FROM t1
2634*de75638bSdrh  NATURAL LEFT JOIN t2
2635*de75638bSdrh  NATURAL LEFT JOIN t3
2636*de75638bSdrh  NATURAL FULL JOIN t4
2637*de75638bSdrh  NATURAL FULL JOIN t5
2638*de75638bSdrh  WHERE b BETWEEN 12 AND 17
2639*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2640*de75638bSdrh} {
2641*de75638bSdrh}
2642*de75638bSdrhdo_execsql_test joinB-193 {
2643*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2644*de75638bSdrh  FROM t1
2645*de75638bSdrh  LEFT JOIN t2 USING(a)
2646*de75638bSdrh  RIGHT JOIN t3 USING(a)
2647*de75638bSdrh  INNER JOIN t4 USING(a)
2648*de75638bSdrh  INNER JOIN t5 USING(a)
2649*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2650*de75638bSdrh} {
2651*de75638bSdrh  15 15 15 15 15 15
2652*de75638bSdrh  19  -  - 19 19 19
2653*de75638bSdrh}
2654*de75638bSdrhdo_execsql_test joinB-194 {
2655*de75638bSdrh  SELECT a, c, d, e, f, g
2656*de75638bSdrh  FROM t1
2657*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2658*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
2659*de75638bSdrh  INNER JOIN t4 USING(a,b)
2660*de75638bSdrh  INNER JOIN t5 USING(a,b)
2661*de75638bSdrh  WHERE a<>13
2662*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2663*de75638bSdrh} {
2664*de75638bSdrh  15 35 35 35 35 35
2665*de75638bSdrh  19  -  - 39 39 39
2666*de75638bSdrh}
2667*de75638bSdrhdo_execsql_test joinB-195 {
2668*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2669*de75638bSdrh  FROM t1
2670*de75638bSdrh  LEFT JOIN t2 USING(a)
2671*de75638bSdrh  RIGHT JOIN t3 USING(a)
2672*de75638bSdrh  INNER JOIN t4 USING(a)
2673*de75638bSdrh  LEFT JOIN t5 USING(a)
2674*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2675*de75638bSdrh} {
2676*de75638bSdrh  11 11  - 11 11  -
2677*de75638bSdrh  13  -  - 13 13  -
2678*de75638bSdrh  15 15 15 15 15 15
2679*de75638bSdrh  19  -  - 19 19 19
2680*de75638bSdrh}
2681*de75638bSdrhdo_execsql_test joinB-196 {
2682*de75638bSdrh  SELECT a, c, d, e, f, g
2683*de75638bSdrh  FROM t1
2684*de75638bSdrh  LEFT JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
2685*de75638bSdrh  INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
2686*de75638bSdrh  WHERE a<=18
2687*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2688*de75638bSdrh} {
2689*de75638bSdrh  11 31  - 31 31  -
2690*de75638bSdrh  15 35 35 35 35 35
2691*de75638bSdrh}
2692*de75638bSdrhdo_execsql_test joinB-197 {
2693*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2694*de75638bSdrh  FROM t1
2695*de75638bSdrh  LEFT JOIN t2 USING(a)
2696*de75638bSdrh  RIGHT JOIN t3 USING(a)
2697*de75638bSdrh  INNER JOIN t4 USING(a)
2698*de75638bSdrh  RIGHT JOIN t5 USING(a)
2699*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2700*de75638bSdrh} {
2701*de75638bSdrh  15 15 15 15 15 15
2702*de75638bSdrh  17  -  -  -  - 17
2703*de75638bSdrh  18  -  -  -  - 18
2704*de75638bSdrh  19  -  - 19 19 19
2705*de75638bSdrh}
2706*de75638bSdrhdo_execsql_test joinB-198 {
2707*de75638bSdrh  SELECT a, b, c, d, e, f, g
2708*de75638bSdrh  FROM t1
2709*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2710*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
2711*de75638bSdrh  INNER JOIN t4 USING(a,b)
2712*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
2713*de75638bSdrh  WHERE d<>33 OR d IS NULL
2714*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2715*de75638bSdrh} {
2716*de75638bSdrh  15 25 35 35 35 35 35
2717*de75638bSdrh  17 27  -  -  -  - 37
2718*de75638bSdrh  18 28  -  -  -  - 38
2719*de75638bSdrh  19 29  -  - 39 39 39
2720*de75638bSdrh}
2721*de75638bSdrhdo_execsql_test joinB-199 {
2722*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2723*de75638bSdrh  FROM t1
2724*de75638bSdrh  LEFT JOIN t2 USING(a)
2725*de75638bSdrh  RIGHT JOIN t3 USING(a)
2726*de75638bSdrh  INNER JOIN t4 USING(a)
2727*de75638bSdrh  FULL JOIN t5 USING(a)
2728*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2729*de75638bSdrh} {
2730*de75638bSdrh  11 11  - 11 11  -
2731*de75638bSdrh  13  -  - 13 13  -
2732*de75638bSdrh  15 15 15 15 15 15
2733*de75638bSdrh  17  -  -  -  - 17
2734*de75638bSdrh  18  -  -  -  - 18
2735*de75638bSdrh  19  -  - 19 19 19
2736*de75638bSdrh}
2737*de75638bSdrhdo_execsql_test joinB-200 {
2738*de75638bSdrh  SELECT b, c, d, e, f, g
2739*de75638bSdrh  FROM t1
2740*de75638bSdrh  NATURAL LEFT JOIN t2
2741*de75638bSdrh  NATURAL RIGHT JOIN t3
2742*de75638bSdrh  NATURAL INNER JOIN t4
2743*de75638bSdrh  NATURAL FULL JOIN t5
2744*de75638bSdrh  WHERE b BETWEEN 12 AND 17
2745*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2746*de75638bSdrh} {
2747*de75638bSdrh}
2748*de75638bSdrhdo_execsql_test joinB-201 {
2749*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2750*de75638bSdrh  FROM t1
2751*de75638bSdrh  LEFT JOIN t2 USING(a)
2752*de75638bSdrh  RIGHT JOIN t3 USING(a)
2753*de75638bSdrh  LEFT JOIN t4 USING(a)
2754*de75638bSdrh  INNER JOIN t5 USING(a)
2755*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2756*de75638bSdrh} {
2757*de75638bSdrh  15 15 15 15 15 15
2758*de75638bSdrh  17 17  - 17  - 17
2759*de75638bSdrh  18  -  - 18  - 18
2760*de75638bSdrh  19  -  - 19 19 19
2761*de75638bSdrh}
2762*de75638bSdrhdo_execsql_test joinB-202 {
2763*de75638bSdrh  SELECT a, c, d, e, f, g
2764*de75638bSdrh  FROM t1
2765*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2766*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
2767*de75638bSdrh  LEFT JOIN t4 USING(a,b)
2768*de75638bSdrh  INNER JOIN t5 USING(a,b)
2769*de75638bSdrh  WHERE a<>13
2770*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2771*de75638bSdrh} {
2772*de75638bSdrh  15 35 35 35 35 35
2773*de75638bSdrh  17 37  - 37  - 37
2774*de75638bSdrh  18  -  - 38  - 38
2775*de75638bSdrh  19  -  - 39 39 39
2776*de75638bSdrh}
2777*de75638bSdrhdo_execsql_test joinB-203 {
2778*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2779*de75638bSdrh  FROM t1
2780*de75638bSdrh  LEFT JOIN t2 USING(a)
2781*de75638bSdrh  RIGHT JOIN t3 USING(a)
2782*de75638bSdrh  LEFT JOIN t4 USING(a)
2783*de75638bSdrh  LEFT JOIN t5 USING(a)
2784*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2785*de75638bSdrh} {
2786*de75638bSdrh   -  -  -  -  -  -
2787*de75638bSdrh  11 11  - 11 11  -
2788*de75638bSdrh  12 12 12 12  -  -
2789*de75638bSdrh  13  -  - 13 13  -
2790*de75638bSdrh  15 15 15 15 15 15
2791*de75638bSdrh  17 17  - 17  - 17
2792*de75638bSdrh  18  -  - 18  - 18
2793*de75638bSdrh  19  -  - 19 19 19
2794*de75638bSdrh}
2795*de75638bSdrhdo_execsql_test joinB-204 {
2796*de75638bSdrh  SELECT a, c, d, e, f, g
2797*de75638bSdrh  FROM t1
2798*de75638bSdrh  LEFT JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
2799*de75638bSdrh  LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
2800*de75638bSdrh  WHERE a<=18
2801*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2802*de75638bSdrh} {
2803*de75638bSdrh  11 31  - 31 31  -
2804*de75638bSdrh  12 32 32 32  -  -
2805*de75638bSdrh  15 35 35 35 35 35
2806*de75638bSdrh  17 37  - 37  -  -
2807*de75638bSdrh}
2808*de75638bSdrhdo_execsql_test joinB-205 {
2809*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2810*de75638bSdrh  FROM t1
2811*de75638bSdrh  LEFT JOIN t2 USING(a)
2812*de75638bSdrh  RIGHT JOIN t3 USING(a)
2813*de75638bSdrh  LEFT JOIN t4 USING(a)
2814*de75638bSdrh  RIGHT JOIN t5 USING(a)
2815*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2816*de75638bSdrh} {
2817*de75638bSdrh  15 15 15 15 15 15
2818*de75638bSdrh  17 17  - 17  - 17
2819*de75638bSdrh  18  -  - 18  - 18
2820*de75638bSdrh  19  -  - 19 19 19
2821*de75638bSdrh}
2822*de75638bSdrhdo_execsql_test joinB-206 {
2823*de75638bSdrh  SELECT a, b, c, d, e, f, g
2824*de75638bSdrh  FROM t1
2825*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2826*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
2827*de75638bSdrh  LEFT JOIN t4 USING(a,b)
2828*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
2829*de75638bSdrh  WHERE d<>33 OR d IS NULL
2830*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2831*de75638bSdrh} {
2832*de75638bSdrh  15 25 35 35 35 35 35
2833*de75638bSdrh  17 27 37  - 37  - 37
2834*de75638bSdrh  18 28  -  - 38  - 38
2835*de75638bSdrh  19 29  -  - 39 39 39
2836*de75638bSdrh}
2837*de75638bSdrhdo_execsql_test joinB-207 {
2838*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2839*de75638bSdrh  FROM t1
2840*de75638bSdrh  LEFT JOIN t2 USING(a)
2841*de75638bSdrh  RIGHT JOIN t3 USING(a)
2842*de75638bSdrh  LEFT JOIN t4 USING(a)
2843*de75638bSdrh  FULL JOIN t5 USING(a)
2844*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2845*de75638bSdrh} {
2846*de75638bSdrh   -  -  -  -  -  -
2847*de75638bSdrh  11 11  - 11 11  -
2848*de75638bSdrh  12 12 12 12  -  -
2849*de75638bSdrh  13  -  - 13 13  -
2850*de75638bSdrh  15 15 15 15 15 15
2851*de75638bSdrh  17 17  - 17  - 17
2852*de75638bSdrh  18  -  - 18  - 18
2853*de75638bSdrh  19  -  - 19 19 19
2854*de75638bSdrh}
2855*de75638bSdrhdo_execsql_test joinB-208 {
2856*de75638bSdrh  SELECT b, c, d, e, f, g
2857*de75638bSdrh  FROM t1
2858*de75638bSdrh  NATURAL LEFT JOIN t2
2859*de75638bSdrh  NATURAL RIGHT JOIN t3
2860*de75638bSdrh  NATURAL LEFT JOIN t4
2861*de75638bSdrh  NATURAL FULL JOIN t5
2862*de75638bSdrh  WHERE b BETWEEN 12 AND 17
2863*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2864*de75638bSdrh} {
2865*de75638bSdrh}
2866*de75638bSdrhdo_execsql_test joinB-209 {
2867*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2868*de75638bSdrh  FROM t1
2869*de75638bSdrh  LEFT JOIN t2 USING(a)
2870*de75638bSdrh  RIGHT JOIN t3 USING(a)
2871*de75638bSdrh  RIGHT JOIN t4 USING(a)
2872*de75638bSdrh  INNER JOIN t5 USING(a)
2873*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2874*de75638bSdrh} {
2875*de75638bSdrh  15 15 15 15 15 15
2876*de75638bSdrh  19  -  - 19 19 19
2877*de75638bSdrh}
2878*de75638bSdrhdo_execsql_test joinB-210 {
2879*de75638bSdrh  SELECT a, c, d, e, f, g
2880*de75638bSdrh  FROM t1
2881*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2882*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
2883*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
2884*de75638bSdrh  INNER JOIN t5 USING(a,b)
2885*de75638bSdrh  WHERE a<>13
2886*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2887*de75638bSdrh} {
2888*de75638bSdrh  15 35 35 35 35 35
2889*de75638bSdrh  19  -  - 39 39 39
2890*de75638bSdrh}
2891*de75638bSdrhdo_execsql_test joinB-211 {
2892*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2893*de75638bSdrh  FROM t1
2894*de75638bSdrh  LEFT JOIN t2 USING(a)
2895*de75638bSdrh  RIGHT JOIN t3 USING(a)
2896*de75638bSdrh  RIGHT JOIN t4 USING(a)
2897*de75638bSdrh  LEFT JOIN t5 USING(a)
2898*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2899*de75638bSdrh} {
2900*de75638bSdrh  11 11  - 11 11  -
2901*de75638bSdrh  13  -  - 13 13  -
2902*de75638bSdrh  15 15 15 15 15 15
2903*de75638bSdrh  19  -  - 19 19 19
2904*de75638bSdrh}
2905*de75638bSdrhdo_execsql_test joinB-212 {
2906*de75638bSdrh  SELECT a, c, d, e, f, g
2907*de75638bSdrh  FROM t1
2908*de75638bSdrh  LEFT JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
2909*de75638bSdrh  RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
2910*de75638bSdrh  WHERE a<=18
2911*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2912*de75638bSdrh} {
2913*de75638bSdrh  11 31  - 31 31  -
2914*de75638bSdrh  13  -  -  - 33  -
2915*de75638bSdrh  15 35 35 35 35 35
2916*de75638bSdrh}
2917*de75638bSdrhdo_execsql_test joinB-213 {
2918*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2919*de75638bSdrh  FROM t1
2920*de75638bSdrh  LEFT JOIN t2 USING(a)
2921*de75638bSdrh  RIGHT JOIN t3 USING(a)
2922*de75638bSdrh  RIGHT JOIN t4 USING(a)
2923*de75638bSdrh  RIGHT JOIN t5 USING(a)
2924*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2925*de75638bSdrh} {
2926*de75638bSdrh  15 15 15 15 15 15
2927*de75638bSdrh  17  -  -  -  - 17
2928*de75638bSdrh  18  -  -  -  - 18
2929*de75638bSdrh  19  -  - 19 19 19
2930*de75638bSdrh}
2931*de75638bSdrhdo_execsql_test joinB-214 {
2932*de75638bSdrh  SELECT a, b, c, d, e, f, g
2933*de75638bSdrh  FROM t1
2934*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2935*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
2936*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
2937*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
2938*de75638bSdrh  WHERE d<>33 OR d IS NULL
2939*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2940*de75638bSdrh} {
2941*de75638bSdrh  15 25 35 35 35 35 35
2942*de75638bSdrh  17 27  -  -  -  - 37
2943*de75638bSdrh  18 28  -  -  -  - 38
2944*de75638bSdrh  19 29  -  - 39 39 39
2945*de75638bSdrh}
2946*de75638bSdrhdo_execsql_test joinB-215 {
2947*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2948*de75638bSdrh  FROM t1
2949*de75638bSdrh  LEFT JOIN t2 USING(a)
2950*de75638bSdrh  RIGHT JOIN t3 USING(a)
2951*de75638bSdrh  RIGHT JOIN t4 USING(a)
2952*de75638bSdrh  FULL JOIN t5 USING(a)
2953*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2954*de75638bSdrh} {
2955*de75638bSdrh  11 11  - 11 11  -
2956*de75638bSdrh  13  -  - 13 13  -
2957*de75638bSdrh  15 15 15 15 15 15
2958*de75638bSdrh  17  -  -  -  - 17
2959*de75638bSdrh  18  -  -  -  - 18
2960*de75638bSdrh  19  -  - 19 19 19
2961*de75638bSdrh}
2962*de75638bSdrhdo_execsql_test joinB-216 {
2963*de75638bSdrh  SELECT b, c, d, e, f, g
2964*de75638bSdrh  FROM t1
2965*de75638bSdrh  NATURAL LEFT JOIN t2
2966*de75638bSdrh  NATURAL RIGHT JOIN t3
2967*de75638bSdrh  NATURAL RIGHT JOIN t4
2968*de75638bSdrh  NATURAL FULL JOIN t5
2969*de75638bSdrh  WHERE b BETWEEN 12 AND 17
2970*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2971*de75638bSdrh} {
2972*de75638bSdrh}
2973*de75638bSdrhdo_execsql_test joinB-217 {
2974*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
2975*de75638bSdrh  FROM t1
2976*de75638bSdrh  LEFT JOIN t2 USING(a)
2977*de75638bSdrh  RIGHT JOIN t3 USING(a)
2978*de75638bSdrh  FULL JOIN t4 USING(a)
2979*de75638bSdrh  INNER JOIN t5 USING(a)
2980*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2981*de75638bSdrh} {
2982*de75638bSdrh  15 15 15 15 15 15
2983*de75638bSdrh  17 17  - 17  - 17
2984*de75638bSdrh  18  -  - 18  - 18
2985*de75638bSdrh  19  -  - 19 19 19
2986*de75638bSdrh}
2987*de75638bSdrhdo_execsql_test joinB-218 {
2988*de75638bSdrh  SELECT a, c, d, e, f, g
2989*de75638bSdrh  FROM t1
2990*de75638bSdrh  LEFT JOIN t2 USING(a,b)
2991*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
2992*de75638bSdrh  FULL JOIN t4 USING(a,b)
2993*de75638bSdrh  INNER JOIN t5 USING(a,b)
2994*de75638bSdrh  WHERE a<>13
2995*de75638bSdrh  ORDER BY 1 NULLS FIRST;
2996*de75638bSdrh} {
2997*de75638bSdrh  15 35 35 35 35 35
2998*de75638bSdrh  17 37  - 37  - 37
2999*de75638bSdrh  18  -  - 38  - 38
3000*de75638bSdrh  19  -  - 39 39 39
3001*de75638bSdrh}
3002*de75638bSdrhdo_execsql_test joinB-219 {
3003*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3004*de75638bSdrh  FROM t1
3005*de75638bSdrh  LEFT JOIN t2 USING(a)
3006*de75638bSdrh  RIGHT JOIN t3 USING(a)
3007*de75638bSdrh  FULL JOIN t4 USING(a)
3008*de75638bSdrh  LEFT JOIN t5 USING(a)
3009*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3010*de75638bSdrh} {
3011*de75638bSdrh   -  -  -  -  -  -
3012*de75638bSdrh  11 11  - 11 11  -
3013*de75638bSdrh  12 12 12 12  -  -
3014*de75638bSdrh  13  -  - 13 13  -
3015*de75638bSdrh  15 15 15 15 15 15
3016*de75638bSdrh  17 17  - 17  - 17
3017*de75638bSdrh  18  -  - 18  - 18
3018*de75638bSdrh  19  -  - 19 19 19
3019*de75638bSdrh}
3020*de75638bSdrhdo_execsql_test joinB-220 {
3021*de75638bSdrh  SELECT a, c, d, e, f, g
3022*de75638bSdrh  FROM t1
3023*de75638bSdrh  LEFT JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
3024*de75638bSdrh  FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
3025*de75638bSdrh  WHERE a<=18
3026*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3027*de75638bSdrh} {
3028*de75638bSdrh  11 31  - 31 31  -
3029*de75638bSdrh  12 32 32 32  -  -
3030*de75638bSdrh  13  -  -  - 33  -
3031*de75638bSdrh  15 35 35 35 35 35
3032*de75638bSdrh  17 37  - 37  -  -
3033*de75638bSdrh}
3034*de75638bSdrhdo_execsql_test joinB-221 {
3035*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3036*de75638bSdrh  FROM t1
3037*de75638bSdrh  LEFT JOIN t2 USING(a)
3038*de75638bSdrh  RIGHT JOIN t3 USING(a)
3039*de75638bSdrh  FULL JOIN t4 USING(a)
3040*de75638bSdrh  RIGHT JOIN t5 USING(a)
3041*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3042*de75638bSdrh} {
3043*de75638bSdrh  15 15 15 15 15 15
3044*de75638bSdrh  17 17  - 17  - 17
3045*de75638bSdrh  18  -  - 18  - 18
3046*de75638bSdrh  19  -  - 19 19 19
3047*de75638bSdrh}
3048*de75638bSdrhdo_execsql_test joinB-222 {
3049*de75638bSdrh  SELECT a, b, c, d, e, f, g
3050*de75638bSdrh  FROM t1
3051*de75638bSdrh  LEFT JOIN t2 USING(a,b)
3052*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
3053*de75638bSdrh  FULL JOIN t4 USING(a,b)
3054*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
3055*de75638bSdrh  WHERE d<>33 OR d IS NULL
3056*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3057*de75638bSdrh} {
3058*de75638bSdrh  15 25 35 35 35 35 35
3059*de75638bSdrh  17 27 37  - 37  - 37
3060*de75638bSdrh  18 28  -  - 38  - 38
3061*de75638bSdrh  19 29  -  - 39 39 39
3062*de75638bSdrh}
3063*de75638bSdrhdo_execsql_test joinB-223 {
3064*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3065*de75638bSdrh  FROM t1
3066*de75638bSdrh  LEFT JOIN t2 USING(a)
3067*de75638bSdrh  RIGHT JOIN t3 USING(a)
3068*de75638bSdrh  FULL JOIN t4 USING(a)
3069*de75638bSdrh  FULL JOIN t5 USING(a)
3070*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3071*de75638bSdrh} {
3072*de75638bSdrh   -  -  -  -  -  -
3073*de75638bSdrh  11 11  - 11 11  -
3074*de75638bSdrh  12 12 12 12  -  -
3075*de75638bSdrh  13  -  - 13 13  -
3076*de75638bSdrh  15 15 15 15 15 15
3077*de75638bSdrh  17 17  - 17  - 17
3078*de75638bSdrh  18  -  - 18  - 18
3079*de75638bSdrh  19  -  - 19 19 19
3080*de75638bSdrh}
3081*de75638bSdrhdo_execsql_test joinB-224 {
3082*de75638bSdrh  SELECT b, c, d, e, f, g
3083*de75638bSdrh  FROM t1
3084*de75638bSdrh  NATURAL LEFT JOIN t2
3085*de75638bSdrh  NATURAL RIGHT JOIN t3
3086*de75638bSdrh  NATURAL FULL JOIN t4
3087*de75638bSdrh  NATURAL FULL JOIN t5
3088*de75638bSdrh  WHERE b BETWEEN 12 AND 17
3089*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3090*de75638bSdrh} {
3091*de75638bSdrh}
3092*de75638bSdrhdo_execsql_test joinB-225 {
3093*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3094*de75638bSdrh  FROM t1
3095*de75638bSdrh  LEFT JOIN t2 USING(a)
3096*de75638bSdrh  FULL JOIN t3 USING(a)
3097*de75638bSdrh  INNER JOIN t4 USING(a)
3098*de75638bSdrh  INNER JOIN t5 USING(a)
3099*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3100*de75638bSdrh} {
3101*de75638bSdrh  15 15 15 15 15 15
3102*de75638bSdrh  19  -  - 19 19 19
3103*de75638bSdrh}
3104*de75638bSdrhdo_execsql_test joinB-226 {
3105*de75638bSdrh  SELECT a, c, d, e, f, g
3106*de75638bSdrh  FROM t1
3107*de75638bSdrh  LEFT JOIN t2 USING(a,b)
3108*de75638bSdrh  FULL JOIN t3 USING(a,b)
3109*de75638bSdrh  INNER JOIN t4 USING(a,b)
3110*de75638bSdrh  INNER JOIN t5 USING(a,b)
3111*de75638bSdrh  WHERE a<>13
3112*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3113*de75638bSdrh} {
3114*de75638bSdrh  15 35 35 35 35 35
3115*de75638bSdrh  19  -  - 39 39 39
3116*de75638bSdrh}
3117*de75638bSdrhdo_execsql_test joinB-227 {
3118*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3119*de75638bSdrh  FROM t1
3120*de75638bSdrh  LEFT JOIN t2 USING(a)
3121*de75638bSdrh  FULL JOIN t3 USING(a)
3122*de75638bSdrh  INNER JOIN t4 USING(a)
3123*de75638bSdrh  LEFT JOIN t5 USING(a)
3124*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3125*de75638bSdrh} {
3126*de75638bSdrh  11 11  - 11 11  -
3127*de75638bSdrh  13  -  - 13 13  -
3128*de75638bSdrh  15 15 15 15 15 15
3129*de75638bSdrh  19  -  - 19 19 19
3130*de75638bSdrh}
3131*de75638bSdrhdo_execsql_test joinB-228 {
3132*de75638bSdrh  SELECT a, c, d, e, f, g
3133*de75638bSdrh  FROM t1
3134*de75638bSdrh  LEFT JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
3135*de75638bSdrh  INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
3136*de75638bSdrh  WHERE a<=18
3137*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3138*de75638bSdrh} {
3139*de75638bSdrh  11 31  - 31 31  -
3140*de75638bSdrh  15 35 35 35 35 35
3141*de75638bSdrh}
3142*de75638bSdrhdo_execsql_test joinB-229 {
3143*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3144*de75638bSdrh  FROM t1
3145*de75638bSdrh  LEFT JOIN t2 USING(a)
3146*de75638bSdrh  FULL JOIN t3 USING(a)
3147*de75638bSdrh  INNER JOIN t4 USING(a)
3148*de75638bSdrh  RIGHT JOIN t5 USING(a)
3149*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3150*de75638bSdrh} {
3151*de75638bSdrh  15 15 15 15 15 15
3152*de75638bSdrh  17  -  -  -  - 17
3153*de75638bSdrh  18  -  -  -  - 18
3154*de75638bSdrh  19  -  - 19 19 19
3155*de75638bSdrh}
3156*de75638bSdrhdo_execsql_test joinB-230 {
3157*de75638bSdrh  SELECT a, b, c, d, e, f, g
3158*de75638bSdrh  FROM t1
3159*de75638bSdrh  LEFT JOIN t2 USING(a,b)
3160*de75638bSdrh  FULL JOIN t3 USING(a,b)
3161*de75638bSdrh  INNER JOIN t4 USING(a,b)
3162*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
3163*de75638bSdrh  WHERE d<>33 OR d IS NULL
3164*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3165*de75638bSdrh} {
3166*de75638bSdrh  15 25 35 35 35 35 35
3167*de75638bSdrh  17 27  -  -  -  - 37
3168*de75638bSdrh  18 28  -  -  -  - 38
3169*de75638bSdrh  19 29  -  - 39 39 39
3170*de75638bSdrh}
3171*de75638bSdrhdo_execsql_test joinB-231 {
3172*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3173*de75638bSdrh  FROM t1
3174*de75638bSdrh  LEFT JOIN t2 USING(a)
3175*de75638bSdrh  FULL JOIN t3 USING(a)
3176*de75638bSdrh  INNER JOIN t4 USING(a)
3177*de75638bSdrh  FULL JOIN t5 USING(a)
3178*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3179*de75638bSdrh} {
3180*de75638bSdrh  11 11  - 11 11  -
3181*de75638bSdrh  13  -  - 13 13  -
3182*de75638bSdrh  15 15 15 15 15 15
3183*de75638bSdrh  17  -  -  -  - 17
3184*de75638bSdrh  18  -  -  -  - 18
3185*de75638bSdrh  19  -  - 19 19 19
3186*de75638bSdrh}
3187*de75638bSdrhdo_execsql_test joinB-232 {
3188*de75638bSdrh  SELECT b, c, d, e, f, g
3189*de75638bSdrh  FROM t1
3190*de75638bSdrh  NATURAL LEFT JOIN t2
3191*de75638bSdrh  NATURAL FULL JOIN t3
3192*de75638bSdrh  NATURAL INNER JOIN t4
3193*de75638bSdrh  NATURAL FULL JOIN t5
3194*de75638bSdrh  WHERE b BETWEEN 12 AND 17
3195*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3196*de75638bSdrh} {
3197*de75638bSdrh}
3198*de75638bSdrhdo_execsql_test joinB-233 {
3199*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3200*de75638bSdrh  FROM t1
3201*de75638bSdrh  LEFT JOIN t2 USING(a)
3202*de75638bSdrh  FULL JOIN t3 USING(a)
3203*de75638bSdrh  LEFT JOIN t4 USING(a)
3204*de75638bSdrh  INNER JOIN t5 USING(a)
3205*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3206*de75638bSdrh} {
3207*de75638bSdrh  15 15 15 15 15 15
3208*de75638bSdrh  17 17  - 17  - 17
3209*de75638bSdrh  18  -  - 18  - 18
3210*de75638bSdrh  19  -  - 19 19 19
3211*de75638bSdrh}
3212*de75638bSdrhdo_execsql_test joinB-234 {
3213*de75638bSdrh  SELECT a, c, d, e, f, g
3214*de75638bSdrh  FROM t1
3215*de75638bSdrh  LEFT JOIN t2 USING(a,b)
3216*de75638bSdrh  FULL JOIN t3 USING(a,b)
3217*de75638bSdrh  LEFT JOIN t4 USING(a,b)
3218*de75638bSdrh  INNER JOIN t5 USING(a,b)
3219*de75638bSdrh  WHERE a<>13
3220*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3221*de75638bSdrh} {
3222*de75638bSdrh  15 35 35 35 35 35
3223*de75638bSdrh  17 37  - 37  - 37
3224*de75638bSdrh  18  -  - 38  - 38
3225*de75638bSdrh  19  -  - 39 39 39
3226*de75638bSdrh}
3227*de75638bSdrhdo_execsql_test joinB-235 {
3228*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3229*de75638bSdrh  FROM t1
3230*de75638bSdrh  LEFT JOIN t2 USING(a)
3231*de75638bSdrh  FULL JOIN t3 USING(a)
3232*de75638bSdrh  LEFT JOIN t4 USING(a)
3233*de75638bSdrh  LEFT JOIN t5 USING(a)
3234*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3235*de75638bSdrh} {
3236*de75638bSdrh   -  -  -  -  -  -
3237*de75638bSdrh  11 11  - 11 11  -
3238*de75638bSdrh  12 12 12 12  -  -
3239*de75638bSdrh  13  -  - 13 13  -
3240*de75638bSdrh  15 15 15 15 15 15
3241*de75638bSdrh  17 17  - 17  - 17
3242*de75638bSdrh  18  -  - 18  - 18
3243*de75638bSdrh  19  -  - 19 19 19
3244*de75638bSdrh}
3245*de75638bSdrhdo_execsql_test joinB-236 {
3246*de75638bSdrh  SELECT a, c, d, e, f, g
3247*de75638bSdrh  FROM t1
3248*de75638bSdrh  LEFT JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
3249*de75638bSdrh  LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
3250*de75638bSdrh  WHERE a<=18
3251*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3252*de75638bSdrh} {
3253*de75638bSdrh  11 31  - 31 31  -
3254*de75638bSdrh  12 32 32 32  -  -
3255*de75638bSdrh  15 35 35 35 35 35
3256*de75638bSdrh  17 37  - 37  -  -
3257*de75638bSdrh}
3258*de75638bSdrhdo_execsql_test joinB-237 {
3259*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3260*de75638bSdrh  FROM t1
3261*de75638bSdrh  LEFT JOIN t2 USING(a)
3262*de75638bSdrh  FULL JOIN t3 USING(a)
3263*de75638bSdrh  LEFT JOIN t4 USING(a)
3264*de75638bSdrh  RIGHT JOIN t5 USING(a)
3265*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3266*de75638bSdrh} {
3267*de75638bSdrh  15 15 15 15 15 15
3268*de75638bSdrh  17 17  - 17  - 17
3269*de75638bSdrh  18  -  - 18  - 18
3270*de75638bSdrh  19  -  - 19 19 19
3271*de75638bSdrh}
3272*de75638bSdrhdo_execsql_test joinB-238 {
3273*de75638bSdrh  SELECT a, b, c, d, e, f, g
3274*de75638bSdrh  FROM t1
3275*de75638bSdrh  LEFT JOIN t2 USING(a,b)
3276*de75638bSdrh  FULL JOIN t3 USING(a,b)
3277*de75638bSdrh  LEFT JOIN t4 USING(a,b)
3278*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
3279*de75638bSdrh  WHERE d<>33 OR d IS NULL
3280*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3281*de75638bSdrh} {
3282*de75638bSdrh  15 25 35 35 35 35 35
3283*de75638bSdrh  17 27 37  - 37  - 37
3284*de75638bSdrh  18 28  -  - 38  - 38
3285*de75638bSdrh  19 29  -  - 39 39 39
3286*de75638bSdrh}
3287*de75638bSdrhdo_execsql_test joinB-239 {
3288*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3289*de75638bSdrh  FROM t1
3290*de75638bSdrh  LEFT JOIN t2 USING(a)
3291*de75638bSdrh  FULL JOIN t3 USING(a)
3292*de75638bSdrh  LEFT JOIN t4 USING(a)
3293*de75638bSdrh  FULL JOIN t5 USING(a)
3294*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3295*de75638bSdrh} {
3296*de75638bSdrh   -  -  -  -  -  -
3297*de75638bSdrh  11 11  - 11 11  -
3298*de75638bSdrh  12 12 12 12  -  -
3299*de75638bSdrh  13  -  - 13 13  -
3300*de75638bSdrh  15 15 15 15 15 15
3301*de75638bSdrh  17 17  - 17  - 17
3302*de75638bSdrh  18  -  - 18  - 18
3303*de75638bSdrh  19  -  - 19 19 19
3304*de75638bSdrh}
3305*de75638bSdrhdo_execsql_test joinB-240 {
3306*de75638bSdrh  SELECT b, c, d, e, f, g
3307*de75638bSdrh  FROM t1
3308*de75638bSdrh  NATURAL LEFT JOIN t2
3309*de75638bSdrh  NATURAL FULL JOIN t3
3310*de75638bSdrh  NATURAL LEFT JOIN t4
3311*de75638bSdrh  NATURAL FULL JOIN t5
3312*de75638bSdrh  WHERE b BETWEEN 12 AND 17
3313*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3314*de75638bSdrh} {
3315*de75638bSdrh}
3316*de75638bSdrhdo_execsql_test joinB-241 {
3317*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3318*de75638bSdrh  FROM t1
3319*de75638bSdrh  LEFT JOIN t2 USING(a)
3320*de75638bSdrh  FULL JOIN t3 USING(a)
3321*de75638bSdrh  RIGHT JOIN t4 USING(a)
3322*de75638bSdrh  INNER JOIN t5 USING(a)
3323*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3324*de75638bSdrh} {
3325*de75638bSdrh  15 15 15 15 15 15
3326*de75638bSdrh  19  -  - 19 19 19
3327*de75638bSdrh}
3328*de75638bSdrhdo_execsql_test joinB-242 {
3329*de75638bSdrh  SELECT a, c, d, e, f, g
3330*de75638bSdrh  FROM t1
3331*de75638bSdrh  LEFT JOIN t2 USING(a,b)
3332*de75638bSdrh  FULL JOIN t3 USING(a,b)
3333*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
3334*de75638bSdrh  INNER JOIN t5 USING(a,b)
3335*de75638bSdrh  WHERE a<>13
3336*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3337*de75638bSdrh} {
3338*de75638bSdrh  15 35 35 35 35 35
3339*de75638bSdrh  19  -  - 39 39 39
3340*de75638bSdrh}
3341*de75638bSdrhdo_execsql_test joinB-243 {
3342*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3343*de75638bSdrh  FROM t1
3344*de75638bSdrh  LEFT JOIN t2 USING(a)
3345*de75638bSdrh  FULL JOIN t3 USING(a)
3346*de75638bSdrh  RIGHT JOIN t4 USING(a)
3347*de75638bSdrh  LEFT JOIN t5 USING(a)
3348*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3349*de75638bSdrh} {
3350*de75638bSdrh  11 11  - 11 11  -
3351*de75638bSdrh  13  -  - 13 13  -
3352*de75638bSdrh  15 15 15 15 15 15
3353*de75638bSdrh  19  -  - 19 19 19
3354*de75638bSdrh}
3355*de75638bSdrhdo_execsql_test joinB-244 {
3356*de75638bSdrh  SELECT a, c, d, e, f, g
3357*de75638bSdrh  FROM t1
3358*de75638bSdrh  LEFT JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
3359*de75638bSdrh  RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
3360*de75638bSdrh  WHERE a<=18
3361*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3362*de75638bSdrh} {
3363*de75638bSdrh  11 31  - 31 31  -
3364*de75638bSdrh  13  -  -  - 33  -
3365*de75638bSdrh  15 35 35 35 35 35
3366*de75638bSdrh}
3367*de75638bSdrhdo_execsql_test joinB-245 {
3368*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3369*de75638bSdrh  FROM t1
3370*de75638bSdrh  LEFT JOIN t2 USING(a)
3371*de75638bSdrh  FULL JOIN t3 USING(a)
3372*de75638bSdrh  RIGHT JOIN t4 USING(a)
3373*de75638bSdrh  RIGHT JOIN t5 USING(a)
3374*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3375*de75638bSdrh} {
3376*de75638bSdrh  15 15 15 15 15 15
3377*de75638bSdrh  17  -  -  -  - 17
3378*de75638bSdrh  18  -  -  -  - 18
3379*de75638bSdrh  19  -  - 19 19 19
3380*de75638bSdrh}
3381*de75638bSdrhdo_execsql_test joinB-246 {
3382*de75638bSdrh  SELECT a, b, c, d, e, f, g
3383*de75638bSdrh  FROM t1
3384*de75638bSdrh  LEFT JOIN t2 USING(a,b)
3385*de75638bSdrh  FULL JOIN t3 USING(a,b)
3386*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
3387*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
3388*de75638bSdrh  WHERE d<>33 OR d IS NULL
3389*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3390*de75638bSdrh} {
3391*de75638bSdrh  15 25 35 35 35 35 35
3392*de75638bSdrh  17 27  -  -  -  - 37
3393*de75638bSdrh  18 28  -  -  -  - 38
3394*de75638bSdrh  19 29  -  - 39 39 39
3395*de75638bSdrh}
3396*de75638bSdrhdo_execsql_test joinB-247 {
3397*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3398*de75638bSdrh  FROM t1
3399*de75638bSdrh  LEFT JOIN t2 USING(a)
3400*de75638bSdrh  FULL JOIN t3 USING(a)
3401*de75638bSdrh  RIGHT JOIN t4 USING(a)
3402*de75638bSdrh  FULL JOIN t5 USING(a)
3403*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3404*de75638bSdrh} {
3405*de75638bSdrh  11 11  - 11 11  -
3406*de75638bSdrh  13  -  - 13 13  -
3407*de75638bSdrh  15 15 15 15 15 15
3408*de75638bSdrh  17  -  -  -  - 17
3409*de75638bSdrh  18  -  -  -  - 18
3410*de75638bSdrh  19  -  - 19 19 19
3411*de75638bSdrh}
3412*de75638bSdrhdo_execsql_test joinB-248 {
3413*de75638bSdrh  SELECT b, c, d, e, f, g
3414*de75638bSdrh  FROM t1
3415*de75638bSdrh  NATURAL LEFT JOIN t2
3416*de75638bSdrh  NATURAL FULL JOIN t3
3417*de75638bSdrh  NATURAL RIGHT JOIN t4
3418*de75638bSdrh  NATURAL FULL JOIN t5
3419*de75638bSdrh  WHERE b BETWEEN 12 AND 17
3420*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3421*de75638bSdrh} {
3422*de75638bSdrh}
3423*de75638bSdrhdo_execsql_test joinB-249 {
3424*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3425*de75638bSdrh  FROM t1
3426*de75638bSdrh  LEFT JOIN t2 USING(a)
3427*de75638bSdrh  FULL JOIN t3 USING(a)
3428*de75638bSdrh  FULL JOIN t4 USING(a)
3429*de75638bSdrh  INNER JOIN t5 USING(a)
3430*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3431*de75638bSdrh} {
3432*de75638bSdrh  15 15 15 15 15 15
3433*de75638bSdrh  17 17  - 17  - 17
3434*de75638bSdrh  18  -  - 18  - 18
3435*de75638bSdrh  19  -  - 19 19 19
3436*de75638bSdrh}
3437*de75638bSdrhdo_execsql_test joinB-250 {
3438*de75638bSdrh  SELECT a, c, d, e, f, g
3439*de75638bSdrh  FROM t1
3440*de75638bSdrh  LEFT JOIN t2 USING(a,b)
3441*de75638bSdrh  FULL JOIN t3 USING(a,b)
3442*de75638bSdrh  FULL JOIN t4 USING(a,b)
3443*de75638bSdrh  INNER JOIN t5 USING(a,b)
3444*de75638bSdrh  WHERE a<>13
3445*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3446*de75638bSdrh} {
3447*de75638bSdrh  15 35 35 35 35 35
3448*de75638bSdrh  17 37  - 37  - 37
3449*de75638bSdrh  18  -  - 38  - 38
3450*de75638bSdrh  19  -  - 39 39 39
3451*de75638bSdrh}
3452*de75638bSdrhdo_execsql_test joinB-251 {
3453*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3454*de75638bSdrh  FROM t1
3455*de75638bSdrh  LEFT JOIN t2 USING(a)
3456*de75638bSdrh  FULL JOIN t3 USING(a)
3457*de75638bSdrh  FULL JOIN t4 USING(a)
3458*de75638bSdrh  LEFT JOIN t5 USING(a)
3459*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3460*de75638bSdrh} {
3461*de75638bSdrh   -  -  -  -  -  -
3462*de75638bSdrh  11 11  - 11 11  -
3463*de75638bSdrh  12 12 12 12  -  -
3464*de75638bSdrh  13  -  - 13 13  -
3465*de75638bSdrh  15 15 15 15 15 15
3466*de75638bSdrh  17 17  - 17  - 17
3467*de75638bSdrh  18  -  - 18  - 18
3468*de75638bSdrh  19  -  - 19 19 19
3469*de75638bSdrh}
3470*de75638bSdrhdo_execsql_test joinB-252 {
3471*de75638bSdrh  SELECT a, c, d, e, f, g
3472*de75638bSdrh  FROM t1
3473*de75638bSdrh  LEFT JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
3474*de75638bSdrh  FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
3475*de75638bSdrh  WHERE a<=18
3476*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3477*de75638bSdrh} {
3478*de75638bSdrh  11 31  - 31 31  -
3479*de75638bSdrh  12 32 32 32  -  -
3480*de75638bSdrh  13  -  -  - 33  -
3481*de75638bSdrh  15 35 35 35 35 35
3482*de75638bSdrh  17 37  - 37  -  -
3483*de75638bSdrh}
3484*de75638bSdrhdo_execsql_test joinB-253 {
3485*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3486*de75638bSdrh  FROM t1
3487*de75638bSdrh  LEFT JOIN t2 USING(a)
3488*de75638bSdrh  FULL JOIN t3 USING(a)
3489*de75638bSdrh  FULL JOIN t4 USING(a)
3490*de75638bSdrh  RIGHT JOIN t5 USING(a)
3491*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3492*de75638bSdrh} {
3493*de75638bSdrh  15 15 15 15 15 15
3494*de75638bSdrh  17 17  - 17  - 17
3495*de75638bSdrh  18  -  - 18  - 18
3496*de75638bSdrh  19  -  - 19 19 19
3497*de75638bSdrh}
3498*de75638bSdrhdo_execsql_test joinB-254 {
3499*de75638bSdrh  SELECT a, b, c, d, e, f, g
3500*de75638bSdrh  FROM t1
3501*de75638bSdrh  LEFT JOIN t2 USING(a,b)
3502*de75638bSdrh  FULL JOIN t3 USING(a,b)
3503*de75638bSdrh  FULL JOIN t4 USING(a,b)
3504*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
3505*de75638bSdrh  WHERE d<>33 OR d IS NULL
3506*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3507*de75638bSdrh} {
3508*de75638bSdrh  15 25 35 35 35 35 35
3509*de75638bSdrh  17 27 37  - 37  - 37
3510*de75638bSdrh  18 28  -  - 38  - 38
3511*de75638bSdrh  19 29  -  - 39 39 39
3512*de75638bSdrh}
3513*de75638bSdrhdo_execsql_test joinB-255 {
3514*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3515*de75638bSdrh  FROM t1
3516*de75638bSdrh  LEFT JOIN t2 USING(a)
3517*de75638bSdrh  FULL JOIN t3 USING(a)
3518*de75638bSdrh  FULL JOIN t4 USING(a)
3519*de75638bSdrh  FULL JOIN t5 USING(a)
3520*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3521*de75638bSdrh} {
3522*de75638bSdrh   -  -  -  -  -  -
3523*de75638bSdrh  11 11  - 11 11  -
3524*de75638bSdrh  12 12 12 12  -  -
3525*de75638bSdrh  13  -  - 13 13  -
3526*de75638bSdrh  15 15 15 15 15 15
3527*de75638bSdrh  17 17  - 17  - 17
3528*de75638bSdrh  18  -  - 18  - 18
3529*de75638bSdrh  19  -  - 19 19 19
3530*de75638bSdrh}
3531*de75638bSdrhdo_execsql_test joinB-256 {
3532*de75638bSdrh  SELECT b, c, d, e, f, g
3533*de75638bSdrh  FROM t1
3534*de75638bSdrh  NATURAL LEFT JOIN t2
3535*de75638bSdrh  NATURAL FULL JOIN t3
3536*de75638bSdrh  NATURAL FULL JOIN t4
3537*de75638bSdrh  NATURAL FULL JOIN t5
3538*de75638bSdrh  WHERE b BETWEEN 12 AND 17
3539*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3540*de75638bSdrh} {
3541*de75638bSdrh}
3542*de75638bSdrhdo_execsql_test joinB-257 {
3543*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3544*de75638bSdrh  FROM t1
3545*de75638bSdrh  RIGHT JOIN t2 USING(a)
3546*de75638bSdrh  INNER JOIN t3 USING(a)
3547*de75638bSdrh  INNER JOIN t4 USING(a)
3548*de75638bSdrh  INNER JOIN t5 USING(a)
3549*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3550*de75638bSdrh} {
3551*de75638bSdrh  15 15 15 15 15 15
3552*de75638bSdrh}
3553*de75638bSdrhdo_execsql_test joinB-258 {
3554*de75638bSdrh  SELECT a, c, d, e, f, g
3555*de75638bSdrh  FROM t1
3556*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
3557*de75638bSdrh  INNER JOIN t3 USING(a,b)
3558*de75638bSdrh  INNER JOIN t4 USING(a,b)
3559*de75638bSdrh  INNER JOIN t5 USING(a,b)
3560*de75638bSdrh  WHERE a<>13
3561*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3562*de75638bSdrh} {
3563*de75638bSdrh  15 35 35 35 35 35
3564*de75638bSdrh}
3565*de75638bSdrhdo_execsql_test joinB-259 {
3566*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3567*de75638bSdrh  FROM t1
3568*de75638bSdrh  RIGHT JOIN t2 USING(a)
3569*de75638bSdrh  INNER JOIN t3 USING(a)
3570*de75638bSdrh  INNER JOIN t4 USING(a)
3571*de75638bSdrh  LEFT JOIN t5 USING(a)
3572*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3573*de75638bSdrh} {
3574*de75638bSdrh  13  - 13 13 13  -
3575*de75638bSdrh  15 15 15 15 15 15
3576*de75638bSdrh}
3577*de75638bSdrhdo_execsql_test joinB-260 {
3578*de75638bSdrh  SELECT a, c, d, e, f, g
3579*de75638bSdrh  FROM t1
3580*de75638bSdrh  RIGHT JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
3581*de75638bSdrh  INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
3582*de75638bSdrh  WHERE a<=18
3583*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3584*de75638bSdrh} {
3585*de75638bSdrh  13  - 33 33 33  -
3586*de75638bSdrh  15 35 35 35 35 35
3587*de75638bSdrh}
3588*de75638bSdrhdo_execsql_test joinB-261 {
3589*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3590*de75638bSdrh  FROM t1
3591*de75638bSdrh  RIGHT JOIN t2 USING(a)
3592*de75638bSdrh  INNER JOIN t3 USING(a)
3593*de75638bSdrh  INNER JOIN t4 USING(a)
3594*de75638bSdrh  RIGHT JOIN t5 USING(a)
3595*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3596*de75638bSdrh} {
3597*de75638bSdrh  15 15 15 15 15 15
3598*de75638bSdrh  17  -  -  -  - 17
3599*de75638bSdrh  18  -  -  -  - 18
3600*de75638bSdrh  19  -  -  -  - 19
3601*de75638bSdrh}
3602*de75638bSdrhdo_execsql_test joinB-262 {
3603*de75638bSdrh  SELECT a, b, c, d, e, f, g
3604*de75638bSdrh  FROM t1
3605*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
3606*de75638bSdrh  INNER JOIN t3 USING(a,b)
3607*de75638bSdrh  INNER JOIN t4 USING(a,b)
3608*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
3609*de75638bSdrh  WHERE d<>33 OR d IS NULL
3610*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3611*de75638bSdrh} {
3612*de75638bSdrh  15 25 35 35 35 35 35
3613*de75638bSdrh  17 27  -  -  -  - 37
3614*de75638bSdrh  18 28  -  -  -  - 38
3615*de75638bSdrh  19 29  -  -  -  - 39
3616*de75638bSdrh}
3617*de75638bSdrhdo_execsql_test joinB-263 {
3618*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3619*de75638bSdrh  FROM t1
3620*de75638bSdrh  RIGHT JOIN t2 USING(a)
3621*de75638bSdrh  INNER JOIN t3 USING(a)
3622*de75638bSdrh  INNER JOIN t4 USING(a)
3623*de75638bSdrh  FULL JOIN t5 USING(a)
3624*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3625*de75638bSdrh} {
3626*de75638bSdrh  13  - 13 13 13  -
3627*de75638bSdrh  15 15 15 15 15 15
3628*de75638bSdrh  17  -  -  -  - 17
3629*de75638bSdrh  18  -  -  -  - 18
3630*de75638bSdrh  19  -  -  -  - 19
3631*de75638bSdrh}
3632*de75638bSdrhdo_execsql_test joinB-264 {
3633*de75638bSdrh  SELECT b, c, d, e, f, g
3634*de75638bSdrh  FROM t1
3635*de75638bSdrh  NATURAL RIGHT JOIN t2
3636*de75638bSdrh  NATURAL INNER JOIN t3
3637*de75638bSdrh  NATURAL INNER JOIN t4
3638*de75638bSdrh  NATURAL FULL JOIN t5
3639*de75638bSdrh  WHERE b BETWEEN 12 AND 17
3640*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3641*de75638bSdrh} {
3642*de75638bSdrh}
3643*de75638bSdrhdo_execsql_test joinB-265 {
3644*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3645*de75638bSdrh  FROM t1
3646*de75638bSdrh  RIGHT JOIN t2 USING(a)
3647*de75638bSdrh  INNER JOIN t3 USING(a)
3648*de75638bSdrh  LEFT JOIN t4 USING(a)
3649*de75638bSdrh  INNER JOIN t5 USING(a)
3650*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3651*de75638bSdrh} {
3652*de75638bSdrh  15 15 15 15 15 15
3653*de75638bSdrh  18  - 18 18  - 18
3654*de75638bSdrh}
3655*de75638bSdrhdo_execsql_test joinB-266 {
3656*de75638bSdrh  SELECT a, c, d, e, f, g
3657*de75638bSdrh  FROM t1
3658*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
3659*de75638bSdrh  INNER JOIN t3 USING(a,b)
3660*de75638bSdrh  LEFT JOIN t4 USING(a,b)
3661*de75638bSdrh  INNER JOIN t5 USING(a,b)
3662*de75638bSdrh  WHERE a<>13
3663*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3664*de75638bSdrh} {
3665*de75638bSdrh  15 35 35 35 35 35
3666*de75638bSdrh  18  - 38 38  - 38
3667*de75638bSdrh}
3668*de75638bSdrhdo_execsql_test joinB-267 {
3669*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3670*de75638bSdrh  FROM t1
3671*de75638bSdrh  RIGHT JOIN t2 USING(a)
3672*de75638bSdrh  INNER JOIN t3 USING(a)
3673*de75638bSdrh  LEFT JOIN t4 USING(a)
3674*de75638bSdrh  LEFT JOIN t5 USING(a)
3675*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3676*de75638bSdrh} {
3677*de75638bSdrh  12 12 12 12  -  -
3678*de75638bSdrh  13  - 13 13 13  -
3679*de75638bSdrh  15 15 15 15 15 15
3680*de75638bSdrh  18  - 18 18  - 18
3681*de75638bSdrh}
3682*de75638bSdrhdo_execsql_test joinB-268 {
3683*de75638bSdrh  SELECT a, c, d, e, f, g
3684*de75638bSdrh  FROM t1
3685*de75638bSdrh  RIGHT JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
3686*de75638bSdrh  LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
3687*de75638bSdrh  WHERE a<=18
3688*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3689*de75638bSdrh} {
3690*de75638bSdrh  12 32 32 32  -  -
3691*de75638bSdrh  13  - 33 33 33  -
3692*de75638bSdrh  15 35 35 35 35 35
3693*de75638bSdrh  18  - 38 38  -  -
3694*de75638bSdrh}
3695*de75638bSdrhdo_execsql_test joinB-269 {
3696*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3697*de75638bSdrh  FROM t1
3698*de75638bSdrh  RIGHT JOIN t2 USING(a)
3699*de75638bSdrh  INNER JOIN t3 USING(a)
3700*de75638bSdrh  LEFT JOIN t4 USING(a)
3701*de75638bSdrh  RIGHT JOIN t5 USING(a)
3702*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3703*de75638bSdrh} {
3704*de75638bSdrh  15 15 15 15 15 15
3705*de75638bSdrh  17  -  -  -  - 17
3706*de75638bSdrh  18  - 18 18  - 18
3707*de75638bSdrh  19  -  -  -  - 19
3708*de75638bSdrh}
3709*de75638bSdrhdo_execsql_test joinB-270 {
3710*de75638bSdrh  SELECT a, b, c, d, e, f, g
3711*de75638bSdrh  FROM t1
3712*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
3713*de75638bSdrh  INNER JOIN t3 USING(a,b)
3714*de75638bSdrh  LEFT JOIN t4 USING(a,b)
3715*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
3716*de75638bSdrh  WHERE d<>33 OR d IS NULL
3717*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3718*de75638bSdrh} {
3719*de75638bSdrh  15 25 35 35 35 35 35
3720*de75638bSdrh  17 27  -  -  -  - 37
3721*de75638bSdrh  18 28  - 38 38  - 38
3722*de75638bSdrh  19 29  -  -  -  - 39
3723*de75638bSdrh}
3724*de75638bSdrhdo_execsql_test joinB-271 {
3725*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3726*de75638bSdrh  FROM t1
3727*de75638bSdrh  RIGHT JOIN t2 USING(a)
3728*de75638bSdrh  INNER JOIN t3 USING(a)
3729*de75638bSdrh  LEFT JOIN t4 USING(a)
3730*de75638bSdrh  FULL JOIN t5 USING(a)
3731*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3732*de75638bSdrh} {
3733*de75638bSdrh  12 12 12 12  -  -
3734*de75638bSdrh  13  - 13 13 13  -
3735*de75638bSdrh  15 15 15 15 15 15
3736*de75638bSdrh  17  -  -  -  - 17
3737*de75638bSdrh  18  - 18 18  - 18
3738*de75638bSdrh  19  -  -  -  - 19
3739*de75638bSdrh}
3740*de75638bSdrhdo_execsql_test joinB-272 {
3741*de75638bSdrh  SELECT b, c, d, e, f, g
3742*de75638bSdrh  FROM t1
3743*de75638bSdrh  NATURAL RIGHT JOIN t2
3744*de75638bSdrh  NATURAL INNER JOIN t3
3745*de75638bSdrh  NATURAL LEFT JOIN t4
3746*de75638bSdrh  NATURAL FULL JOIN t5
3747*de75638bSdrh  WHERE b BETWEEN 12 AND 17
3748*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3749*de75638bSdrh} {
3750*de75638bSdrh}
3751*de75638bSdrhdo_execsql_test joinB-273 {
3752*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3753*de75638bSdrh  FROM t1
3754*de75638bSdrh  RIGHT JOIN t2 USING(a)
3755*de75638bSdrh  INNER JOIN t3 USING(a)
3756*de75638bSdrh  RIGHT JOIN t4 USING(a)
3757*de75638bSdrh  INNER JOIN t5 USING(a)
3758*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3759*de75638bSdrh} {
3760*de75638bSdrh  15 15 15 15 15 15
3761*de75638bSdrh  19  -  -  - 19 19
3762*de75638bSdrh}
3763*de75638bSdrhdo_execsql_test joinB-274 {
3764*de75638bSdrh  SELECT a, c, d, e, f, g
3765*de75638bSdrh  FROM t1
3766*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
3767*de75638bSdrh  INNER JOIN t3 USING(a,b)
3768*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
3769*de75638bSdrh  INNER JOIN t5 USING(a,b)
3770*de75638bSdrh  WHERE a<>13
3771*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3772*de75638bSdrh} {
3773*de75638bSdrh  15 35 35 35 35 35
3774*de75638bSdrh  19  -  -  - 39 39
3775*de75638bSdrh}
3776*de75638bSdrhdo_execsql_test joinB-275 {
3777*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3778*de75638bSdrh  FROM t1
3779*de75638bSdrh  RIGHT JOIN t2 USING(a)
3780*de75638bSdrh  INNER JOIN t3 USING(a)
3781*de75638bSdrh  RIGHT JOIN t4 USING(a)
3782*de75638bSdrh  LEFT JOIN t5 USING(a)
3783*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3784*de75638bSdrh} {
3785*de75638bSdrh  11  -  -  - 11  -
3786*de75638bSdrh  13  - 13 13 13  -
3787*de75638bSdrh  15 15 15 15 15 15
3788*de75638bSdrh  19  -  -  - 19 19
3789*de75638bSdrh}
3790*de75638bSdrhdo_execsql_test joinB-276 {
3791*de75638bSdrh  SELECT a, c, d, e, f, g
3792*de75638bSdrh  FROM t1
3793*de75638bSdrh  RIGHT JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
3794*de75638bSdrh  RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
3795*de75638bSdrh  WHERE a<=18
3796*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3797*de75638bSdrh} {
3798*de75638bSdrh  11  -  -  - 31  -
3799*de75638bSdrh  13  - 33 33 33  -
3800*de75638bSdrh  15 35 35 35 35 35
3801*de75638bSdrh}
3802*de75638bSdrhdo_execsql_test joinB-277 {
3803*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3804*de75638bSdrh  FROM t1
3805*de75638bSdrh  RIGHT JOIN t2 USING(a)
3806*de75638bSdrh  INNER JOIN t3 USING(a)
3807*de75638bSdrh  RIGHT JOIN t4 USING(a)
3808*de75638bSdrh  RIGHT JOIN t5 USING(a)
3809*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3810*de75638bSdrh} {
3811*de75638bSdrh  15 15 15 15 15 15
3812*de75638bSdrh  17  -  -  -  - 17
3813*de75638bSdrh  18  -  -  -  - 18
3814*de75638bSdrh  19  -  -  - 19 19
3815*de75638bSdrh}
3816*de75638bSdrhdo_execsql_test joinB-278 {
3817*de75638bSdrh  SELECT a, b, c, d, e, f, g
3818*de75638bSdrh  FROM t1
3819*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
3820*de75638bSdrh  INNER JOIN t3 USING(a,b)
3821*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
3822*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
3823*de75638bSdrh  WHERE d<>33 OR d IS NULL
3824*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3825*de75638bSdrh} {
3826*de75638bSdrh  15 25 35 35 35 35 35
3827*de75638bSdrh  17 27  -  -  -  - 37
3828*de75638bSdrh  18 28  -  -  -  - 38
3829*de75638bSdrh  19 29  -  -  - 39 39
3830*de75638bSdrh}
3831*de75638bSdrhdo_execsql_test joinB-279 {
3832*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3833*de75638bSdrh  FROM t1
3834*de75638bSdrh  RIGHT JOIN t2 USING(a)
3835*de75638bSdrh  INNER JOIN t3 USING(a)
3836*de75638bSdrh  RIGHT JOIN t4 USING(a)
3837*de75638bSdrh  FULL JOIN t5 USING(a)
3838*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3839*de75638bSdrh} {
3840*de75638bSdrh  11  -  -  - 11  -
3841*de75638bSdrh  13  - 13 13 13  -
3842*de75638bSdrh  15 15 15 15 15 15
3843*de75638bSdrh  17  -  -  -  - 17
3844*de75638bSdrh  18  -  -  -  - 18
3845*de75638bSdrh  19  -  -  - 19 19
3846*de75638bSdrh}
3847*de75638bSdrhdo_execsql_test joinB-280 {
3848*de75638bSdrh  SELECT b, c, d, e, f, g
3849*de75638bSdrh  FROM t1
3850*de75638bSdrh  NATURAL RIGHT JOIN t2
3851*de75638bSdrh  NATURAL INNER JOIN t3
3852*de75638bSdrh  NATURAL RIGHT JOIN t4
3853*de75638bSdrh  NATURAL FULL JOIN t5
3854*de75638bSdrh  WHERE b BETWEEN 12 AND 17
3855*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3856*de75638bSdrh} {
3857*de75638bSdrh}
3858*de75638bSdrhdo_execsql_test joinB-281 {
3859*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3860*de75638bSdrh  FROM t1
3861*de75638bSdrh  RIGHT JOIN t2 USING(a)
3862*de75638bSdrh  INNER JOIN t3 USING(a)
3863*de75638bSdrh  FULL JOIN t4 USING(a)
3864*de75638bSdrh  INNER JOIN t5 USING(a)
3865*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3866*de75638bSdrh} {
3867*de75638bSdrh  15 15 15 15 15 15
3868*de75638bSdrh  18  - 18 18  - 18
3869*de75638bSdrh  19  -  -  - 19 19
3870*de75638bSdrh}
3871*de75638bSdrhdo_execsql_test joinB-282 {
3872*de75638bSdrh  SELECT a, c, d, e, f, g
3873*de75638bSdrh  FROM t1
3874*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
3875*de75638bSdrh  INNER JOIN t3 USING(a,b)
3876*de75638bSdrh  FULL JOIN t4 USING(a,b)
3877*de75638bSdrh  INNER JOIN t5 USING(a,b)
3878*de75638bSdrh  WHERE a<>13
3879*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3880*de75638bSdrh} {
3881*de75638bSdrh  15 35 35 35 35 35
3882*de75638bSdrh  18  - 38 38  - 38
3883*de75638bSdrh  19  -  -  - 39 39
3884*de75638bSdrh}
3885*de75638bSdrhdo_execsql_test joinB-283 {
3886*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3887*de75638bSdrh  FROM t1
3888*de75638bSdrh  RIGHT JOIN t2 USING(a)
3889*de75638bSdrh  INNER JOIN t3 USING(a)
3890*de75638bSdrh  FULL JOIN t4 USING(a)
3891*de75638bSdrh  LEFT JOIN t5 USING(a)
3892*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3893*de75638bSdrh} {
3894*de75638bSdrh  11  -  -  - 11  -
3895*de75638bSdrh  12 12 12 12  -  -
3896*de75638bSdrh  13  - 13 13 13  -
3897*de75638bSdrh  15 15 15 15 15 15
3898*de75638bSdrh  18  - 18 18  - 18
3899*de75638bSdrh  19  -  -  - 19 19
3900*de75638bSdrh}
3901*de75638bSdrhdo_execsql_test joinB-284 {
3902*de75638bSdrh  SELECT a, c, d, e, f, g
3903*de75638bSdrh  FROM t1
3904*de75638bSdrh  RIGHT JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
3905*de75638bSdrh  FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
3906*de75638bSdrh  WHERE a<=18
3907*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3908*de75638bSdrh} {
3909*de75638bSdrh  11  -  -  - 31  -
3910*de75638bSdrh  12 32 32 32  -  -
3911*de75638bSdrh  13  - 33 33 33  -
3912*de75638bSdrh  15 35 35 35 35 35
3913*de75638bSdrh  18  - 38 38  -  -
3914*de75638bSdrh}
3915*de75638bSdrhdo_execsql_test joinB-285 {
3916*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3917*de75638bSdrh  FROM t1
3918*de75638bSdrh  RIGHT JOIN t2 USING(a)
3919*de75638bSdrh  INNER JOIN t3 USING(a)
3920*de75638bSdrh  FULL JOIN t4 USING(a)
3921*de75638bSdrh  RIGHT JOIN t5 USING(a)
3922*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3923*de75638bSdrh} {
3924*de75638bSdrh  15 15 15 15 15 15
3925*de75638bSdrh  17  -  -  -  - 17
3926*de75638bSdrh  18  - 18 18  - 18
3927*de75638bSdrh  19  -  -  - 19 19
3928*de75638bSdrh}
3929*de75638bSdrhdo_execsql_test joinB-286 {
3930*de75638bSdrh  SELECT a, b, c, d, e, f, g
3931*de75638bSdrh  FROM t1
3932*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
3933*de75638bSdrh  INNER JOIN t3 USING(a,b)
3934*de75638bSdrh  FULL JOIN t4 USING(a,b)
3935*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
3936*de75638bSdrh  WHERE d<>33 OR d IS NULL
3937*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3938*de75638bSdrh} {
3939*de75638bSdrh  15 25 35 35 35 35 35
3940*de75638bSdrh  17 27  -  -  -  - 37
3941*de75638bSdrh  18 28  - 38 38  - 38
3942*de75638bSdrh  19 29  -  -  - 39 39
3943*de75638bSdrh}
3944*de75638bSdrhdo_execsql_test joinB-287 {
3945*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3946*de75638bSdrh  FROM t1
3947*de75638bSdrh  RIGHT JOIN t2 USING(a)
3948*de75638bSdrh  INNER JOIN t3 USING(a)
3949*de75638bSdrh  FULL JOIN t4 USING(a)
3950*de75638bSdrh  FULL JOIN t5 USING(a)
3951*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3952*de75638bSdrh} {
3953*de75638bSdrh  11  -  -  - 11  -
3954*de75638bSdrh  12 12 12 12  -  -
3955*de75638bSdrh  13  - 13 13 13  -
3956*de75638bSdrh  15 15 15 15 15 15
3957*de75638bSdrh  17  -  -  -  - 17
3958*de75638bSdrh  18  - 18 18  - 18
3959*de75638bSdrh  19  -  -  - 19 19
3960*de75638bSdrh}
3961*de75638bSdrhdo_execsql_test joinB-288 {
3962*de75638bSdrh  SELECT b, c, d, e, f, g
3963*de75638bSdrh  FROM t1
3964*de75638bSdrh  NATURAL RIGHT JOIN t2
3965*de75638bSdrh  NATURAL INNER JOIN t3
3966*de75638bSdrh  NATURAL FULL JOIN t4
3967*de75638bSdrh  NATURAL FULL JOIN t5
3968*de75638bSdrh  WHERE b BETWEEN 12 AND 17
3969*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3970*de75638bSdrh} {
3971*de75638bSdrh}
3972*de75638bSdrhdo_execsql_test joinB-289 {
3973*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3974*de75638bSdrh  FROM t1
3975*de75638bSdrh  RIGHT JOIN t2 USING(a)
3976*de75638bSdrh  LEFT JOIN t3 USING(a)
3977*de75638bSdrh  INNER JOIN t4 USING(a)
3978*de75638bSdrh  INNER JOIN t5 USING(a)
3979*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3980*de75638bSdrh} {
3981*de75638bSdrh  15 15 15 15 15 15
3982*de75638bSdrh}
3983*de75638bSdrhdo_execsql_test joinB-290 {
3984*de75638bSdrh  SELECT a, c, d, e, f, g
3985*de75638bSdrh  FROM t1
3986*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
3987*de75638bSdrh  LEFT JOIN t3 USING(a,b)
3988*de75638bSdrh  INNER JOIN t4 USING(a,b)
3989*de75638bSdrh  INNER JOIN t5 USING(a,b)
3990*de75638bSdrh  WHERE a<>13
3991*de75638bSdrh  ORDER BY 1 NULLS FIRST;
3992*de75638bSdrh} {
3993*de75638bSdrh  15 35 35 35 35 35
3994*de75638bSdrh}
3995*de75638bSdrhdo_execsql_test joinB-291 {
3996*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
3997*de75638bSdrh  FROM t1
3998*de75638bSdrh  RIGHT JOIN t2 USING(a)
3999*de75638bSdrh  LEFT JOIN t3 USING(a)
4000*de75638bSdrh  INNER JOIN t4 USING(a)
4001*de75638bSdrh  LEFT JOIN t5 USING(a)
4002*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4003*de75638bSdrh} {
4004*de75638bSdrh  13  - 13 13 13  -
4005*de75638bSdrh  15 15 15 15 15 15
4006*de75638bSdrh}
4007*de75638bSdrhdo_execsql_test joinB-292 {
4008*de75638bSdrh  SELECT a, c, d, e, f, g
4009*de75638bSdrh  FROM t1
4010*de75638bSdrh  RIGHT JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
4011*de75638bSdrh  INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
4012*de75638bSdrh  WHERE a<=18
4013*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4014*de75638bSdrh} {
4015*de75638bSdrh  13  - 33 33 33  -
4016*de75638bSdrh  15 35 35 35 35 35
4017*de75638bSdrh}
4018*de75638bSdrhdo_execsql_test joinB-293 {
4019*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4020*de75638bSdrh  FROM t1
4021*de75638bSdrh  RIGHT JOIN t2 USING(a)
4022*de75638bSdrh  LEFT JOIN t3 USING(a)
4023*de75638bSdrh  INNER JOIN t4 USING(a)
4024*de75638bSdrh  RIGHT JOIN t5 USING(a)
4025*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4026*de75638bSdrh} {
4027*de75638bSdrh  15 15 15 15 15 15
4028*de75638bSdrh  17  -  -  -  - 17
4029*de75638bSdrh  18  -  -  -  - 18
4030*de75638bSdrh  19  -  -  -  - 19
4031*de75638bSdrh}
4032*de75638bSdrhdo_execsql_test joinB-294 {
4033*de75638bSdrh  SELECT a, b, c, d, e, f, g
4034*de75638bSdrh  FROM t1
4035*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
4036*de75638bSdrh  LEFT JOIN t3 USING(a,b)
4037*de75638bSdrh  INNER JOIN t4 USING(a,b)
4038*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
4039*de75638bSdrh  WHERE d<>33 OR d IS NULL
4040*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4041*de75638bSdrh} {
4042*de75638bSdrh  15 25 35 35 35 35 35
4043*de75638bSdrh  17 27  -  -  -  - 37
4044*de75638bSdrh  18 28  -  -  -  - 38
4045*de75638bSdrh  19 29  -  -  -  - 39
4046*de75638bSdrh}
4047*de75638bSdrhdo_execsql_test joinB-295 {
4048*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4049*de75638bSdrh  FROM t1
4050*de75638bSdrh  RIGHT JOIN t2 USING(a)
4051*de75638bSdrh  LEFT JOIN t3 USING(a)
4052*de75638bSdrh  INNER JOIN t4 USING(a)
4053*de75638bSdrh  FULL JOIN t5 USING(a)
4054*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4055*de75638bSdrh} {
4056*de75638bSdrh  13  - 13 13 13  -
4057*de75638bSdrh  15 15 15 15 15 15
4058*de75638bSdrh  17  -  -  -  - 17
4059*de75638bSdrh  18  -  -  -  - 18
4060*de75638bSdrh  19  -  -  -  - 19
4061*de75638bSdrh}
4062*de75638bSdrhdo_execsql_test joinB-296 {
4063*de75638bSdrh  SELECT b, c, d, e, f, g
4064*de75638bSdrh  FROM t1
4065*de75638bSdrh  NATURAL RIGHT JOIN t2
4066*de75638bSdrh  NATURAL LEFT JOIN t3
4067*de75638bSdrh  NATURAL INNER JOIN t4
4068*de75638bSdrh  NATURAL FULL JOIN t5
4069*de75638bSdrh  WHERE b BETWEEN 12 AND 17
4070*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4071*de75638bSdrh} {
4072*de75638bSdrh}
4073*de75638bSdrhdo_execsql_test joinB-297 {
4074*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4075*de75638bSdrh  FROM t1
4076*de75638bSdrh  RIGHT JOIN t2 USING(a)
4077*de75638bSdrh  LEFT JOIN t3 USING(a)
4078*de75638bSdrh  LEFT JOIN t4 USING(a)
4079*de75638bSdrh  INNER JOIN t5 USING(a)
4080*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4081*de75638bSdrh} {
4082*de75638bSdrh  15 15 15 15 15 15
4083*de75638bSdrh  18  - 18 18  - 18
4084*de75638bSdrh}
4085*de75638bSdrhdo_execsql_test joinB-298 {
4086*de75638bSdrh  SELECT a, c, d, e, f, g
4087*de75638bSdrh  FROM t1
4088*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
4089*de75638bSdrh  LEFT JOIN t3 USING(a,b)
4090*de75638bSdrh  LEFT JOIN t4 USING(a,b)
4091*de75638bSdrh  INNER JOIN t5 USING(a,b)
4092*de75638bSdrh  WHERE a<>13
4093*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4094*de75638bSdrh} {
4095*de75638bSdrh  15 35 35 35 35 35
4096*de75638bSdrh  18  - 38 38  - 38
4097*de75638bSdrh}
4098*de75638bSdrhdo_execsql_test joinB-299 {
4099*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4100*de75638bSdrh  FROM t1
4101*de75638bSdrh  RIGHT JOIN t2 USING(a)
4102*de75638bSdrh  LEFT JOIN t3 USING(a)
4103*de75638bSdrh  LEFT JOIN t4 USING(a)
4104*de75638bSdrh  LEFT JOIN t5 USING(a)
4105*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4106*de75638bSdrh} {
4107*de75638bSdrh   -  -  -  -  -  -
4108*de75638bSdrh  12 12 12 12  -  -
4109*de75638bSdrh  13  - 13 13 13  -
4110*de75638bSdrh  15 15 15 15 15 15
4111*de75638bSdrh  18  - 18 18  - 18
4112*de75638bSdrh}
4113*de75638bSdrhdo_execsql_test joinB-300 {
4114*de75638bSdrh  SELECT a, c, d, e, f, g
4115*de75638bSdrh  FROM t1
4116*de75638bSdrh  RIGHT JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
4117*de75638bSdrh  LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
4118*de75638bSdrh  WHERE a<=18
4119*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4120*de75638bSdrh} {
4121*de75638bSdrh  12 32 32 32  -  -
4122*de75638bSdrh  13  - 33 33 33  -
4123*de75638bSdrh  15 35 35 35 35 35
4124*de75638bSdrh  18  - 38 38  -  -
4125*de75638bSdrh}
4126*de75638bSdrhdo_execsql_test joinB-301 {
4127*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4128*de75638bSdrh  FROM t1
4129*de75638bSdrh  RIGHT JOIN t2 USING(a)
4130*de75638bSdrh  LEFT JOIN t3 USING(a)
4131*de75638bSdrh  LEFT JOIN t4 USING(a)
4132*de75638bSdrh  RIGHT JOIN t5 USING(a)
4133*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4134*de75638bSdrh} {
4135*de75638bSdrh  15 15 15 15 15 15
4136*de75638bSdrh  17  -  -  -  - 17
4137*de75638bSdrh  18  - 18 18  - 18
4138*de75638bSdrh  19  -  -  -  - 19
4139*de75638bSdrh}
4140*de75638bSdrhdo_execsql_test joinB-302 {
4141*de75638bSdrh  SELECT a, b, c, d, e, f, g
4142*de75638bSdrh  FROM t1
4143*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
4144*de75638bSdrh  LEFT JOIN t3 USING(a,b)
4145*de75638bSdrh  LEFT JOIN t4 USING(a,b)
4146*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
4147*de75638bSdrh  WHERE d<>33 OR d IS NULL
4148*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4149*de75638bSdrh} {
4150*de75638bSdrh  15 25 35 35 35 35 35
4151*de75638bSdrh  17 27  -  -  -  - 37
4152*de75638bSdrh  18 28  - 38 38  - 38
4153*de75638bSdrh  19 29  -  -  -  - 39
4154*de75638bSdrh}
4155*de75638bSdrhdo_execsql_test joinB-303 {
4156*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4157*de75638bSdrh  FROM t1
4158*de75638bSdrh  RIGHT JOIN t2 USING(a)
4159*de75638bSdrh  LEFT JOIN t3 USING(a)
4160*de75638bSdrh  LEFT JOIN t4 USING(a)
4161*de75638bSdrh  FULL JOIN t5 USING(a)
4162*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4163*de75638bSdrh} {
4164*de75638bSdrh   -  -  -  -  -  -
4165*de75638bSdrh  12 12 12 12  -  -
4166*de75638bSdrh  13  - 13 13 13  -
4167*de75638bSdrh  15 15 15 15 15 15
4168*de75638bSdrh  17  -  -  -  - 17
4169*de75638bSdrh  18  - 18 18  - 18
4170*de75638bSdrh  19  -  -  -  - 19
4171*de75638bSdrh}
4172*de75638bSdrhdo_execsql_test joinB-304 {
4173*de75638bSdrh  SELECT b, c, d, e, f, g
4174*de75638bSdrh  FROM t1
4175*de75638bSdrh  NATURAL RIGHT JOIN t2
4176*de75638bSdrh  NATURAL LEFT JOIN t3
4177*de75638bSdrh  NATURAL LEFT JOIN t4
4178*de75638bSdrh  NATURAL FULL JOIN t5
4179*de75638bSdrh  WHERE b BETWEEN 12 AND 17
4180*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4181*de75638bSdrh} {
4182*de75638bSdrh}
4183*de75638bSdrhdo_execsql_test joinB-305 {
4184*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4185*de75638bSdrh  FROM t1
4186*de75638bSdrh  RIGHT JOIN t2 USING(a)
4187*de75638bSdrh  LEFT JOIN t3 USING(a)
4188*de75638bSdrh  RIGHT JOIN t4 USING(a)
4189*de75638bSdrh  INNER JOIN t5 USING(a)
4190*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4191*de75638bSdrh} {
4192*de75638bSdrh  15 15 15 15 15 15
4193*de75638bSdrh  19  -  -  - 19 19
4194*de75638bSdrh}
4195*de75638bSdrhdo_execsql_test joinB-306 {
4196*de75638bSdrh  SELECT a, c, d, e, f, g
4197*de75638bSdrh  FROM t1
4198*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
4199*de75638bSdrh  LEFT JOIN t3 USING(a,b)
4200*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
4201*de75638bSdrh  INNER JOIN t5 USING(a,b)
4202*de75638bSdrh  WHERE a<>13
4203*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4204*de75638bSdrh} {
4205*de75638bSdrh  15 35 35 35 35 35
4206*de75638bSdrh  19  -  -  - 39 39
4207*de75638bSdrh}
4208*de75638bSdrhdo_execsql_test joinB-307 {
4209*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4210*de75638bSdrh  FROM t1
4211*de75638bSdrh  RIGHT JOIN t2 USING(a)
4212*de75638bSdrh  LEFT JOIN t3 USING(a)
4213*de75638bSdrh  RIGHT JOIN t4 USING(a)
4214*de75638bSdrh  LEFT JOIN t5 USING(a)
4215*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4216*de75638bSdrh} {
4217*de75638bSdrh  11  -  -  - 11  -
4218*de75638bSdrh  13  - 13 13 13  -
4219*de75638bSdrh  15 15 15 15 15 15
4220*de75638bSdrh  19  -  -  - 19 19
4221*de75638bSdrh}
4222*de75638bSdrhdo_execsql_test joinB-308 {
4223*de75638bSdrh  SELECT a, c, d, e, f, g
4224*de75638bSdrh  FROM t1
4225*de75638bSdrh  RIGHT JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
4226*de75638bSdrh  RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
4227*de75638bSdrh  WHERE a<=18
4228*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4229*de75638bSdrh} {
4230*de75638bSdrh  11  -  -  - 31  -
4231*de75638bSdrh  13  - 33 33 33  -
4232*de75638bSdrh  15 35 35 35 35 35
4233*de75638bSdrh}
4234*de75638bSdrhdo_execsql_test joinB-309 {
4235*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4236*de75638bSdrh  FROM t1
4237*de75638bSdrh  RIGHT JOIN t2 USING(a)
4238*de75638bSdrh  LEFT JOIN t3 USING(a)
4239*de75638bSdrh  RIGHT JOIN t4 USING(a)
4240*de75638bSdrh  RIGHT JOIN t5 USING(a)
4241*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4242*de75638bSdrh} {
4243*de75638bSdrh  15 15 15 15 15 15
4244*de75638bSdrh  17  -  -  -  - 17
4245*de75638bSdrh  18  -  -  -  - 18
4246*de75638bSdrh  19  -  -  - 19 19
4247*de75638bSdrh}
4248*de75638bSdrhdo_execsql_test joinB-310 {
4249*de75638bSdrh  SELECT a, b, c, d, e, f, g
4250*de75638bSdrh  FROM t1
4251*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
4252*de75638bSdrh  LEFT JOIN t3 USING(a,b)
4253*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
4254*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
4255*de75638bSdrh  WHERE d<>33 OR d IS NULL
4256*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4257*de75638bSdrh} {
4258*de75638bSdrh  15 25 35 35 35 35 35
4259*de75638bSdrh  17 27  -  -  -  - 37
4260*de75638bSdrh  18 28  -  -  -  - 38
4261*de75638bSdrh  19 29  -  -  - 39 39
4262*de75638bSdrh}
4263*de75638bSdrhdo_execsql_test joinB-311 {
4264*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4265*de75638bSdrh  FROM t1
4266*de75638bSdrh  RIGHT JOIN t2 USING(a)
4267*de75638bSdrh  LEFT JOIN t3 USING(a)
4268*de75638bSdrh  RIGHT JOIN t4 USING(a)
4269*de75638bSdrh  FULL JOIN t5 USING(a)
4270*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4271*de75638bSdrh} {
4272*de75638bSdrh  11  -  -  - 11  -
4273*de75638bSdrh  13  - 13 13 13  -
4274*de75638bSdrh  15 15 15 15 15 15
4275*de75638bSdrh  17  -  -  -  - 17
4276*de75638bSdrh  18  -  -  -  - 18
4277*de75638bSdrh  19  -  -  - 19 19
4278*de75638bSdrh}
4279*de75638bSdrhdo_execsql_test joinB-312 {
4280*de75638bSdrh  SELECT b, c, d, e, f, g
4281*de75638bSdrh  FROM t1
4282*de75638bSdrh  NATURAL RIGHT JOIN t2
4283*de75638bSdrh  NATURAL LEFT JOIN t3
4284*de75638bSdrh  NATURAL RIGHT JOIN t4
4285*de75638bSdrh  NATURAL FULL JOIN t5
4286*de75638bSdrh  WHERE b BETWEEN 12 AND 17
4287*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4288*de75638bSdrh} {
4289*de75638bSdrh}
4290*de75638bSdrhdo_execsql_test joinB-313 {
4291*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4292*de75638bSdrh  FROM t1
4293*de75638bSdrh  RIGHT JOIN t2 USING(a)
4294*de75638bSdrh  LEFT JOIN t3 USING(a)
4295*de75638bSdrh  FULL JOIN t4 USING(a)
4296*de75638bSdrh  INNER JOIN t5 USING(a)
4297*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4298*de75638bSdrh} {
4299*de75638bSdrh  15 15 15 15 15 15
4300*de75638bSdrh  18  - 18 18  - 18
4301*de75638bSdrh  19  -  -  - 19 19
4302*de75638bSdrh}
4303*de75638bSdrhdo_execsql_test joinB-314 {
4304*de75638bSdrh  SELECT a, c, d, e, f, g
4305*de75638bSdrh  FROM t1
4306*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
4307*de75638bSdrh  LEFT JOIN t3 USING(a,b)
4308*de75638bSdrh  FULL JOIN t4 USING(a,b)
4309*de75638bSdrh  INNER JOIN t5 USING(a,b)
4310*de75638bSdrh  WHERE a<>13
4311*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4312*de75638bSdrh} {
4313*de75638bSdrh  15 35 35 35 35 35
4314*de75638bSdrh  18  - 38 38  - 38
4315*de75638bSdrh  19  -  -  - 39 39
4316*de75638bSdrh}
4317*de75638bSdrhdo_execsql_test joinB-315 {
4318*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4319*de75638bSdrh  FROM t1
4320*de75638bSdrh  RIGHT JOIN t2 USING(a)
4321*de75638bSdrh  LEFT JOIN t3 USING(a)
4322*de75638bSdrh  FULL JOIN t4 USING(a)
4323*de75638bSdrh  LEFT JOIN t5 USING(a)
4324*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4325*de75638bSdrh} {
4326*de75638bSdrh   -  -  -  -  -  -
4327*de75638bSdrh  11  -  -  - 11  -
4328*de75638bSdrh  12 12 12 12  -  -
4329*de75638bSdrh  13  - 13 13 13  -
4330*de75638bSdrh  15 15 15 15 15 15
4331*de75638bSdrh  18  - 18 18  - 18
4332*de75638bSdrh  19  -  -  - 19 19
4333*de75638bSdrh}
4334*de75638bSdrhdo_execsql_test joinB-316 {
4335*de75638bSdrh  SELECT a, c, d, e, f, g
4336*de75638bSdrh  FROM t1
4337*de75638bSdrh  RIGHT JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
4338*de75638bSdrh  FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
4339*de75638bSdrh  WHERE a<=18
4340*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4341*de75638bSdrh} {
4342*de75638bSdrh  11  -  -  - 31  -
4343*de75638bSdrh  12 32 32 32  -  -
4344*de75638bSdrh  13  - 33 33 33  -
4345*de75638bSdrh  15 35 35 35 35 35
4346*de75638bSdrh  18  - 38 38  -  -
4347*de75638bSdrh}
4348*de75638bSdrhdo_execsql_test joinB-317 {
4349*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4350*de75638bSdrh  FROM t1
4351*de75638bSdrh  RIGHT JOIN t2 USING(a)
4352*de75638bSdrh  LEFT JOIN t3 USING(a)
4353*de75638bSdrh  FULL JOIN t4 USING(a)
4354*de75638bSdrh  RIGHT JOIN t5 USING(a)
4355*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4356*de75638bSdrh} {
4357*de75638bSdrh  15 15 15 15 15 15
4358*de75638bSdrh  17  -  -  -  - 17
4359*de75638bSdrh  18  - 18 18  - 18
4360*de75638bSdrh  19  -  -  - 19 19
4361*de75638bSdrh}
4362*de75638bSdrhdo_execsql_test joinB-318 {
4363*de75638bSdrh  SELECT a, b, c, d, e, f, g
4364*de75638bSdrh  FROM t1
4365*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
4366*de75638bSdrh  LEFT JOIN t3 USING(a,b)
4367*de75638bSdrh  FULL JOIN t4 USING(a,b)
4368*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
4369*de75638bSdrh  WHERE d<>33 OR d IS NULL
4370*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4371*de75638bSdrh} {
4372*de75638bSdrh  15 25 35 35 35 35 35
4373*de75638bSdrh  17 27  -  -  -  - 37
4374*de75638bSdrh  18 28  - 38 38  - 38
4375*de75638bSdrh  19 29  -  -  - 39 39
4376*de75638bSdrh}
4377*de75638bSdrhdo_execsql_test joinB-319 {
4378*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4379*de75638bSdrh  FROM t1
4380*de75638bSdrh  RIGHT JOIN t2 USING(a)
4381*de75638bSdrh  LEFT JOIN t3 USING(a)
4382*de75638bSdrh  FULL JOIN t4 USING(a)
4383*de75638bSdrh  FULL JOIN t5 USING(a)
4384*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4385*de75638bSdrh} {
4386*de75638bSdrh   -  -  -  -  -  -
4387*de75638bSdrh  11  -  -  - 11  -
4388*de75638bSdrh  12 12 12 12  -  -
4389*de75638bSdrh  13  - 13 13 13  -
4390*de75638bSdrh  15 15 15 15 15 15
4391*de75638bSdrh  17  -  -  -  - 17
4392*de75638bSdrh  18  - 18 18  - 18
4393*de75638bSdrh  19  -  -  - 19 19
4394*de75638bSdrh}
4395*de75638bSdrhdo_execsql_test joinB-320 {
4396*de75638bSdrh  SELECT b, c, d, e, f, g
4397*de75638bSdrh  FROM t1
4398*de75638bSdrh  NATURAL RIGHT JOIN t2
4399*de75638bSdrh  NATURAL LEFT JOIN t3
4400*de75638bSdrh  NATURAL FULL JOIN t4
4401*de75638bSdrh  NATURAL FULL JOIN t5
4402*de75638bSdrh  WHERE b BETWEEN 12 AND 17
4403*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4404*de75638bSdrh} {
4405*de75638bSdrh}
4406*de75638bSdrhdo_execsql_test joinB-321 {
4407*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4408*de75638bSdrh  FROM t1
4409*de75638bSdrh  RIGHT JOIN t2 USING(a)
4410*de75638bSdrh  RIGHT JOIN t3 USING(a)
4411*de75638bSdrh  INNER JOIN t4 USING(a)
4412*de75638bSdrh  INNER JOIN t5 USING(a)
4413*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4414*de75638bSdrh} {
4415*de75638bSdrh  15 15 15 15 15 15
4416*de75638bSdrh  19  -  - 19 19 19
4417*de75638bSdrh}
4418*de75638bSdrhdo_execsql_test joinB-322 {
4419*de75638bSdrh  SELECT a, c, d, e, f, g
4420*de75638bSdrh  FROM t1
4421*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
4422*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
4423*de75638bSdrh  INNER JOIN t4 USING(a,b)
4424*de75638bSdrh  INNER JOIN t5 USING(a,b)
4425*de75638bSdrh  WHERE a<>13
4426*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4427*de75638bSdrh} {
4428*de75638bSdrh  15 35 35 35 35 35
4429*de75638bSdrh  19  -  - 39 39 39
4430*de75638bSdrh}
4431*de75638bSdrhdo_execsql_test joinB-323 {
4432*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4433*de75638bSdrh  FROM t1
4434*de75638bSdrh  RIGHT JOIN t2 USING(a)
4435*de75638bSdrh  RIGHT JOIN t3 USING(a)
4436*de75638bSdrh  INNER JOIN t4 USING(a)
4437*de75638bSdrh  LEFT JOIN t5 USING(a)
4438*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4439*de75638bSdrh} {
4440*de75638bSdrh  11  -  - 11 11  -
4441*de75638bSdrh  13  - 13 13 13  -
4442*de75638bSdrh  15 15 15 15 15 15
4443*de75638bSdrh  19  -  - 19 19 19
4444*de75638bSdrh}
4445*de75638bSdrhdo_execsql_test joinB-324 {
4446*de75638bSdrh  SELECT a, c, d, e, f, g
4447*de75638bSdrh  FROM t1
4448*de75638bSdrh  RIGHT JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
4449*de75638bSdrh  INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
4450*de75638bSdrh  WHERE a<=18
4451*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4452*de75638bSdrh} {
4453*de75638bSdrh  11 31  - 31 31  -
4454*de75638bSdrh  13  - 33 33 33  -
4455*de75638bSdrh  15 35 35 35 35 35
4456*de75638bSdrh}
4457*de75638bSdrhdo_execsql_test joinB-325 {
4458*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4459*de75638bSdrh  FROM t1
4460*de75638bSdrh  RIGHT JOIN t2 USING(a)
4461*de75638bSdrh  RIGHT JOIN t3 USING(a)
4462*de75638bSdrh  INNER JOIN t4 USING(a)
4463*de75638bSdrh  RIGHT JOIN t5 USING(a)
4464*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4465*de75638bSdrh} {
4466*de75638bSdrh  15 15 15 15 15 15
4467*de75638bSdrh  17  -  -  -  - 17
4468*de75638bSdrh  18  -  -  -  - 18
4469*de75638bSdrh  19  -  - 19 19 19
4470*de75638bSdrh}
4471*de75638bSdrhdo_execsql_test joinB-326 {
4472*de75638bSdrh  SELECT a, b, c, d, e, f, g
4473*de75638bSdrh  FROM t1
4474*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
4475*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
4476*de75638bSdrh  INNER JOIN t4 USING(a,b)
4477*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
4478*de75638bSdrh  WHERE d<>33 OR d IS NULL
4479*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4480*de75638bSdrh} {
4481*de75638bSdrh  15 25 35 35 35 35 35
4482*de75638bSdrh  17 27  -  -  -  - 37
4483*de75638bSdrh  18 28  -  -  -  - 38
4484*de75638bSdrh  19 29  -  - 39 39 39
4485*de75638bSdrh}
4486*de75638bSdrhdo_execsql_test joinB-327 {
4487*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4488*de75638bSdrh  FROM t1
4489*de75638bSdrh  RIGHT JOIN t2 USING(a)
4490*de75638bSdrh  RIGHT JOIN t3 USING(a)
4491*de75638bSdrh  INNER JOIN t4 USING(a)
4492*de75638bSdrh  FULL JOIN t5 USING(a)
4493*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4494*de75638bSdrh} {
4495*de75638bSdrh  11  -  - 11 11  -
4496*de75638bSdrh  13  - 13 13 13  -
4497*de75638bSdrh  15 15 15 15 15 15
4498*de75638bSdrh  17  -  -  -  - 17
4499*de75638bSdrh  18  -  -  -  - 18
4500*de75638bSdrh  19  -  - 19 19 19
4501*de75638bSdrh}
4502*de75638bSdrhdo_execsql_test joinB-328 {
4503*de75638bSdrh  SELECT b, c, d, e, f, g
4504*de75638bSdrh  FROM t1
4505*de75638bSdrh  NATURAL RIGHT JOIN t2
4506*de75638bSdrh  NATURAL RIGHT JOIN t3
4507*de75638bSdrh  NATURAL INNER JOIN t4
4508*de75638bSdrh  NATURAL FULL JOIN t5
4509*de75638bSdrh  WHERE b BETWEEN 12 AND 17
4510*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4511*de75638bSdrh} {
4512*de75638bSdrh}
4513*de75638bSdrhdo_execsql_test joinB-329 {
4514*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4515*de75638bSdrh  FROM t1
4516*de75638bSdrh  RIGHT JOIN t2 USING(a)
4517*de75638bSdrh  RIGHT JOIN t3 USING(a)
4518*de75638bSdrh  LEFT JOIN t4 USING(a)
4519*de75638bSdrh  INNER JOIN t5 USING(a)
4520*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4521*de75638bSdrh} {
4522*de75638bSdrh  15 15 15 15 15 15
4523*de75638bSdrh  17  -  - 17  - 17
4524*de75638bSdrh  18  - 18 18  - 18
4525*de75638bSdrh  19  -  - 19 19 19
4526*de75638bSdrh}
4527*de75638bSdrhdo_execsql_test joinB-330 {
4528*de75638bSdrh  SELECT a, c, d, e, f, g
4529*de75638bSdrh  FROM t1
4530*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
4531*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
4532*de75638bSdrh  LEFT JOIN t4 USING(a,b)
4533*de75638bSdrh  INNER JOIN t5 USING(a,b)
4534*de75638bSdrh  WHERE a<>13
4535*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4536*de75638bSdrh} {
4537*de75638bSdrh  15 35 35 35 35 35
4538*de75638bSdrh  17  -  - 37  - 37
4539*de75638bSdrh  18  - 38 38  - 38
4540*de75638bSdrh  19  -  - 39 39 39
4541*de75638bSdrh}
4542*de75638bSdrhdo_execsql_test joinB-331 {
4543*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4544*de75638bSdrh  FROM t1
4545*de75638bSdrh  RIGHT JOIN t2 USING(a)
4546*de75638bSdrh  RIGHT JOIN t3 USING(a)
4547*de75638bSdrh  LEFT JOIN t4 USING(a)
4548*de75638bSdrh  LEFT JOIN t5 USING(a)
4549*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4550*de75638bSdrh} {
4551*de75638bSdrh   -  -  -  -  -  -
4552*de75638bSdrh  11  -  - 11 11  -
4553*de75638bSdrh  12 12 12 12  -  -
4554*de75638bSdrh  13  - 13 13 13  -
4555*de75638bSdrh  15 15 15 15 15 15
4556*de75638bSdrh  17  -  - 17  - 17
4557*de75638bSdrh  18  - 18 18  - 18
4558*de75638bSdrh  19  -  - 19 19 19
4559*de75638bSdrh}
4560*de75638bSdrhdo_execsql_test joinB-332 {
4561*de75638bSdrh  SELECT a, c, d, e, f, g
4562*de75638bSdrh  FROM t1
4563*de75638bSdrh  RIGHT JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
4564*de75638bSdrh  LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
4565*de75638bSdrh  WHERE a<=18
4566*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4567*de75638bSdrh} {
4568*de75638bSdrh  11 31  - 31 31  -
4569*de75638bSdrh  12 32 32 32  -  -
4570*de75638bSdrh  13  - 33 33 33  -
4571*de75638bSdrh  15 35 35 35 35 35
4572*de75638bSdrh  17 37  - 37  -  -
4573*de75638bSdrh  18  - 38 38  -  -
4574*de75638bSdrh}
4575*de75638bSdrhdo_execsql_test joinB-333 {
4576*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4577*de75638bSdrh  FROM t1
4578*de75638bSdrh  RIGHT JOIN t2 USING(a)
4579*de75638bSdrh  RIGHT JOIN t3 USING(a)
4580*de75638bSdrh  LEFT JOIN t4 USING(a)
4581*de75638bSdrh  RIGHT JOIN t5 USING(a)
4582*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4583*de75638bSdrh} {
4584*de75638bSdrh  15 15 15 15 15 15
4585*de75638bSdrh  17  -  - 17  - 17
4586*de75638bSdrh  18  - 18 18  - 18
4587*de75638bSdrh  19  -  - 19 19 19
4588*de75638bSdrh}
4589*de75638bSdrhdo_execsql_test joinB-334 {
4590*de75638bSdrh  SELECT a, b, c, d, e, f, g
4591*de75638bSdrh  FROM t1
4592*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
4593*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
4594*de75638bSdrh  LEFT JOIN t4 USING(a,b)
4595*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
4596*de75638bSdrh  WHERE d<>33 OR d IS NULL
4597*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4598*de75638bSdrh} {
4599*de75638bSdrh  15 25 35 35 35 35 35
4600*de75638bSdrh  17 27  -  - 37  - 37
4601*de75638bSdrh  18 28  - 38 38  - 38
4602*de75638bSdrh  19 29  -  - 39 39 39
4603*de75638bSdrh}
4604*de75638bSdrhdo_execsql_test joinB-335 {
4605*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4606*de75638bSdrh  FROM t1
4607*de75638bSdrh  RIGHT JOIN t2 USING(a)
4608*de75638bSdrh  RIGHT JOIN t3 USING(a)
4609*de75638bSdrh  LEFT JOIN t4 USING(a)
4610*de75638bSdrh  FULL JOIN t5 USING(a)
4611*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4612*de75638bSdrh} {
4613*de75638bSdrh   -  -  -  -  -  -
4614*de75638bSdrh  11  -  - 11 11  -
4615*de75638bSdrh  12 12 12 12  -  -
4616*de75638bSdrh  13  - 13 13 13  -
4617*de75638bSdrh  15 15 15 15 15 15
4618*de75638bSdrh  17  -  - 17  - 17
4619*de75638bSdrh  18  - 18 18  - 18
4620*de75638bSdrh  19  -  - 19 19 19
4621*de75638bSdrh}
4622*de75638bSdrhdo_execsql_test joinB-336 {
4623*de75638bSdrh  SELECT b, c, d, e, f, g
4624*de75638bSdrh  FROM t1
4625*de75638bSdrh  NATURAL RIGHT JOIN t2
4626*de75638bSdrh  NATURAL RIGHT JOIN t3
4627*de75638bSdrh  NATURAL LEFT JOIN t4
4628*de75638bSdrh  NATURAL FULL JOIN t5
4629*de75638bSdrh  WHERE b BETWEEN 12 AND 17
4630*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4631*de75638bSdrh} {
4632*de75638bSdrh}
4633*de75638bSdrhdo_execsql_test joinB-337 {
4634*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4635*de75638bSdrh  FROM t1
4636*de75638bSdrh  RIGHT JOIN t2 USING(a)
4637*de75638bSdrh  RIGHT JOIN t3 USING(a)
4638*de75638bSdrh  RIGHT JOIN t4 USING(a)
4639*de75638bSdrh  INNER JOIN t5 USING(a)
4640*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4641*de75638bSdrh} {
4642*de75638bSdrh  15 15 15 15 15 15
4643*de75638bSdrh  19  -  - 19 19 19
4644*de75638bSdrh}
4645*de75638bSdrhdo_execsql_test joinB-338 {
4646*de75638bSdrh  SELECT a, c, d, e, f, g
4647*de75638bSdrh  FROM t1
4648*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
4649*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
4650*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
4651*de75638bSdrh  INNER JOIN t5 USING(a,b)
4652*de75638bSdrh  WHERE a<>13
4653*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4654*de75638bSdrh} {
4655*de75638bSdrh  15 35 35 35 35 35
4656*de75638bSdrh  19  -  - 39 39 39
4657*de75638bSdrh}
4658*de75638bSdrhdo_execsql_test joinB-339 {
4659*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4660*de75638bSdrh  FROM t1
4661*de75638bSdrh  RIGHT JOIN t2 USING(a)
4662*de75638bSdrh  RIGHT JOIN t3 USING(a)
4663*de75638bSdrh  RIGHT JOIN t4 USING(a)
4664*de75638bSdrh  LEFT JOIN t5 USING(a)
4665*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4666*de75638bSdrh} {
4667*de75638bSdrh  11  -  - 11 11  -
4668*de75638bSdrh  13  - 13 13 13  -
4669*de75638bSdrh  15 15 15 15 15 15
4670*de75638bSdrh  19  -  - 19 19 19
4671*de75638bSdrh}
4672*de75638bSdrhdo_execsql_test joinB-340 {
4673*de75638bSdrh  SELECT a, c, d, e, f, g
4674*de75638bSdrh  FROM t1
4675*de75638bSdrh  RIGHT JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
4676*de75638bSdrh  RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
4677*de75638bSdrh  WHERE a<=18
4678*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4679*de75638bSdrh} {
4680*de75638bSdrh  11 31  - 31 31  -
4681*de75638bSdrh  13  - 33 33 33  -
4682*de75638bSdrh  15 35 35 35 35 35
4683*de75638bSdrh}
4684*de75638bSdrhdo_execsql_test joinB-341 {
4685*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4686*de75638bSdrh  FROM t1
4687*de75638bSdrh  RIGHT JOIN t2 USING(a)
4688*de75638bSdrh  RIGHT JOIN t3 USING(a)
4689*de75638bSdrh  RIGHT JOIN t4 USING(a)
4690*de75638bSdrh  RIGHT JOIN t5 USING(a)
4691*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4692*de75638bSdrh} {
4693*de75638bSdrh  15 15 15 15 15 15
4694*de75638bSdrh  17  -  -  -  - 17
4695*de75638bSdrh  18  -  -  -  - 18
4696*de75638bSdrh  19  -  - 19 19 19
4697*de75638bSdrh}
4698*de75638bSdrhdo_execsql_test joinB-342 {
4699*de75638bSdrh  SELECT a, b, c, d, e, f, g
4700*de75638bSdrh  FROM t1
4701*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
4702*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
4703*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
4704*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
4705*de75638bSdrh  WHERE d<>33 OR d IS NULL
4706*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4707*de75638bSdrh} {
4708*de75638bSdrh  15 25 35 35 35 35 35
4709*de75638bSdrh  17 27  -  -  -  - 37
4710*de75638bSdrh  18 28  -  -  -  - 38
4711*de75638bSdrh  19 29  -  - 39 39 39
4712*de75638bSdrh}
4713*de75638bSdrhdo_execsql_test joinB-343 {
4714*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4715*de75638bSdrh  FROM t1
4716*de75638bSdrh  RIGHT JOIN t2 USING(a)
4717*de75638bSdrh  RIGHT JOIN t3 USING(a)
4718*de75638bSdrh  RIGHT JOIN t4 USING(a)
4719*de75638bSdrh  FULL JOIN t5 USING(a)
4720*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4721*de75638bSdrh} {
4722*de75638bSdrh  11  -  - 11 11  -
4723*de75638bSdrh  13  - 13 13 13  -
4724*de75638bSdrh  15 15 15 15 15 15
4725*de75638bSdrh  17  -  -  -  - 17
4726*de75638bSdrh  18  -  -  -  - 18
4727*de75638bSdrh  19  -  - 19 19 19
4728*de75638bSdrh}
4729*de75638bSdrhdo_execsql_test joinB-344 {
4730*de75638bSdrh  SELECT b, c, d, e, f, g
4731*de75638bSdrh  FROM t1
4732*de75638bSdrh  NATURAL RIGHT JOIN t2
4733*de75638bSdrh  NATURAL RIGHT JOIN t3
4734*de75638bSdrh  NATURAL RIGHT JOIN t4
4735*de75638bSdrh  NATURAL FULL JOIN t5
4736*de75638bSdrh  WHERE b BETWEEN 12 AND 17
4737*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4738*de75638bSdrh} {
4739*de75638bSdrh}
4740*de75638bSdrhdo_execsql_test joinB-345 {
4741*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4742*de75638bSdrh  FROM t1
4743*de75638bSdrh  RIGHT JOIN t2 USING(a)
4744*de75638bSdrh  RIGHT JOIN t3 USING(a)
4745*de75638bSdrh  FULL JOIN t4 USING(a)
4746*de75638bSdrh  INNER JOIN t5 USING(a)
4747*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4748*de75638bSdrh} {
4749*de75638bSdrh  15 15 15 15 15 15
4750*de75638bSdrh  17  -  - 17  - 17
4751*de75638bSdrh  18  - 18 18  - 18
4752*de75638bSdrh  19  -  - 19 19 19
4753*de75638bSdrh}
4754*de75638bSdrhdo_execsql_test joinB-346 {
4755*de75638bSdrh  SELECT a, c, d, e, f, g
4756*de75638bSdrh  FROM t1
4757*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
4758*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
4759*de75638bSdrh  FULL JOIN t4 USING(a,b)
4760*de75638bSdrh  INNER JOIN t5 USING(a,b)
4761*de75638bSdrh  WHERE a<>13
4762*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4763*de75638bSdrh} {
4764*de75638bSdrh  15 35 35 35 35 35
4765*de75638bSdrh  17  -  - 37  - 37
4766*de75638bSdrh  18  - 38 38  - 38
4767*de75638bSdrh  19  -  - 39 39 39
4768*de75638bSdrh}
4769*de75638bSdrhdo_execsql_test joinB-347 {
4770*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4771*de75638bSdrh  FROM t1
4772*de75638bSdrh  RIGHT JOIN t2 USING(a)
4773*de75638bSdrh  RIGHT JOIN t3 USING(a)
4774*de75638bSdrh  FULL JOIN t4 USING(a)
4775*de75638bSdrh  LEFT JOIN t5 USING(a)
4776*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4777*de75638bSdrh} {
4778*de75638bSdrh   -  -  -  -  -  -
4779*de75638bSdrh  11  -  - 11 11  -
4780*de75638bSdrh  12 12 12 12  -  -
4781*de75638bSdrh  13  - 13 13 13  -
4782*de75638bSdrh  15 15 15 15 15 15
4783*de75638bSdrh  17  -  - 17  - 17
4784*de75638bSdrh  18  - 18 18  - 18
4785*de75638bSdrh  19  -  - 19 19 19
4786*de75638bSdrh}
4787*de75638bSdrhdo_execsql_test joinB-348 {
4788*de75638bSdrh  SELECT a, c, d, e, f, g
4789*de75638bSdrh  FROM t1
4790*de75638bSdrh  RIGHT JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
4791*de75638bSdrh  FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
4792*de75638bSdrh  WHERE a<=18
4793*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4794*de75638bSdrh} {
4795*de75638bSdrh  11 31  - 31 31  -
4796*de75638bSdrh  12 32 32 32  -  -
4797*de75638bSdrh  13  - 33 33 33  -
4798*de75638bSdrh  15 35 35 35 35 35
4799*de75638bSdrh  17 37  - 37  -  -
4800*de75638bSdrh  18  - 38 38  -  -
4801*de75638bSdrh}
4802*de75638bSdrhdo_execsql_test joinB-349 {
4803*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4804*de75638bSdrh  FROM t1
4805*de75638bSdrh  RIGHT JOIN t2 USING(a)
4806*de75638bSdrh  RIGHT JOIN t3 USING(a)
4807*de75638bSdrh  FULL JOIN t4 USING(a)
4808*de75638bSdrh  RIGHT JOIN t5 USING(a)
4809*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4810*de75638bSdrh} {
4811*de75638bSdrh  15 15 15 15 15 15
4812*de75638bSdrh  17  -  - 17  - 17
4813*de75638bSdrh  18  - 18 18  - 18
4814*de75638bSdrh  19  -  - 19 19 19
4815*de75638bSdrh}
4816*de75638bSdrhdo_execsql_test joinB-350 {
4817*de75638bSdrh  SELECT a, b, c, d, e, f, g
4818*de75638bSdrh  FROM t1
4819*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
4820*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
4821*de75638bSdrh  FULL JOIN t4 USING(a,b)
4822*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
4823*de75638bSdrh  WHERE d<>33 OR d IS NULL
4824*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4825*de75638bSdrh} {
4826*de75638bSdrh  15 25 35 35 35 35 35
4827*de75638bSdrh  17 27  -  - 37  - 37
4828*de75638bSdrh  18 28  - 38 38  - 38
4829*de75638bSdrh  19 29  -  - 39 39 39
4830*de75638bSdrh}
4831*de75638bSdrhdo_execsql_test joinB-351 {
4832*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4833*de75638bSdrh  FROM t1
4834*de75638bSdrh  RIGHT JOIN t2 USING(a)
4835*de75638bSdrh  RIGHT JOIN t3 USING(a)
4836*de75638bSdrh  FULL JOIN t4 USING(a)
4837*de75638bSdrh  FULL JOIN t5 USING(a)
4838*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4839*de75638bSdrh} {
4840*de75638bSdrh   -  -  -  -  -  -
4841*de75638bSdrh  11  -  - 11 11  -
4842*de75638bSdrh  12 12 12 12  -  -
4843*de75638bSdrh  13  - 13 13 13  -
4844*de75638bSdrh  15 15 15 15 15 15
4845*de75638bSdrh  17  -  - 17  - 17
4846*de75638bSdrh  18  - 18 18  - 18
4847*de75638bSdrh  19  -  - 19 19 19
4848*de75638bSdrh}
4849*de75638bSdrhdo_execsql_test joinB-352 {
4850*de75638bSdrh  SELECT b, c, d, e, f, g
4851*de75638bSdrh  FROM t1
4852*de75638bSdrh  NATURAL RIGHT JOIN t2
4853*de75638bSdrh  NATURAL RIGHT JOIN t3
4854*de75638bSdrh  NATURAL FULL JOIN t4
4855*de75638bSdrh  NATURAL FULL JOIN t5
4856*de75638bSdrh  WHERE b BETWEEN 12 AND 17
4857*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4858*de75638bSdrh} {
4859*de75638bSdrh}
4860*de75638bSdrhdo_execsql_test joinB-353 {
4861*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4862*de75638bSdrh  FROM t1
4863*de75638bSdrh  RIGHT JOIN t2 USING(a)
4864*de75638bSdrh  FULL JOIN t3 USING(a)
4865*de75638bSdrh  INNER JOIN t4 USING(a)
4866*de75638bSdrh  INNER JOIN t5 USING(a)
4867*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4868*de75638bSdrh} {
4869*de75638bSdrh  15 15 15 15 15 15
4870*de75638bSdrh  19  -  - 19 19 19
4871*de75638bSdrh}
4872*de75638bSdrhdo_execsql_test joinB-354 {
4873*de75638bSdrh  SELECT a, c, d, e, f, g
4874*de75638bSdrh  FROM t1
4875*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
4876*de75638bSdrh  FULL JOIN t3 USING(a,b)
4877*de75638bSdrh  INNER JOIN t4 USING(a,b)
4878*de75638bSdrh  INNER JOIN t5 USING(a,b)
4879*de75638bSdrh  WHERE a<>13
4880*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4881*de75638bSdrh} {
4882*de75638bSdrh  15 35 35 35 35 35
4883*de75638bSdrh  19  -  - 39 39 39
4884*de75638bSdrh}
4885*de75638bSdrhdo_execsql_test joinB-355 {
4886*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4887*de75638bSdrh  FROM t1
4888*de75638bSdrh  RIGHT JOIN t2 USING(a)
4889*de75638bSdrh  FULL JOIN t3 USING(a)
4890*de75638bSdrh  INNER JOIN t4 USING(a)
4891*de75638bSdrh  LEFT JOIN t5 USING(a)
4892*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4893*de75638bSdrh} {
4894*de75638bSdrh  11  -  - 11 11  -
4895*de75638bSdrh  13  - 13 13 13  -
4896*de75638bSdrh  15 15 15 15 15 15
4897*de75638bSdrh  19  -  - 19 19 19
4898*de75638bSdrh}
4899*de75638bSdrhdo_execsql_test joinB-356 {
4900*de75638bSdrh  SELECT a, c, d, e, f, g
4901*de75638bSdrh  FROM t1
4902*de75638bSdrh  RIGHT JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
4903*de75638bSdrh  INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
4904*de75638bSdrh  WHERE a<=18
4905*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4906*de75638bSdrh} {
4907*de75638bSdrh  11 31  - 31 31  -
4908*de75638bSdrh  13  - 33 33 33  -
4909*de75638bSdrh  15 35 35 35 35 35
4910*de75638bSdrh}
4911*de75638bSdrhdo_execsql_test joinB-357 {
4912*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4913*de75638bSdrh  FROM t1
4914*de75638bSdrh  RIGHT JOIN t2 USING(a)
4915*de75638bSdrh  FULL JOIN t3 USING(a)
4916*de75638bSdrh  INNER JOIN t4 USING(a)
4917*de75638bSdrh  RIGHT JOIN t5 USING(a)
4918*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4919*de75638bSdrh} {
4920*de75638bSdrh  15 15 15 15 15 15
4921*de75638bSdrh  17  -  -  -  - 17
4922*de75638bSdrh  18  -  -  -  - 18
4923*de75638bSdrh  19  -  - 19 19 19
4924*de75638bSdrh}
4925*de75638bSdrhdo_execsql_test joinB-358 {
4926*de75638bSdrh  SELECT a, b, c, d, e, f, g
4927*de75638bSdrh  FROM t1
4928*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
4929*de75638bSdrh  FULL JOIN t3 USING(a,b)
4930*de75638bSdrh  INNER JOIN t4 USING(a,b)
4931*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
4932*de75638bSdrh  WHERE d<>33 OR d IS NULL
4933*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4934*de75638bSdrh} {
4935*de75638bSdrh  15 25 35 35 35 35 35
4936*de75638bSdrh  17 27  -  -  -  - 37
4937*de75638bSdrh  18 28  -  -  -  - 38
4938*de75638bSdrh  19 29  -  - 39 39 39
4939*de75638bSdrh}
4940*de75638bSdrhdo_execsql_test joinB-359 {
4941*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4942*de75638bSdrh  FROM t1
4943*de75638bSdrh  RIGHT JOIN t2 USING(a)
4944*de75638bSdrh  FULL JOIN t3 USING(a)
4945*de75638bSdrh  INNER JOIN t4 USING(a)
4946*de75638bSdrh  FULL JOIN t5 USING(a)
4947*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4948*de75638bSdrh} {
4949*de75638bSdrh  11  -  - 11 11  -
4950*de75638bSdrh  13  - 13 13 13  -
4951*de75638bSdrh  15 15 15 15 15 15
4952*de75638bSdrh  17  -  -  -  - 17
4953*de75638bSdrh  18  -  -  -  - 18
4954*de75638bSdrh  19  -  - 19 19 19
4955*de75638bSdrh}
4956*de75638bSdrhdo_execsql_test joinB-360 {
4957*de75638bSdrh  SELECT b, c, d, e, f, g
4958*de75638bSdrh  FROM t1
4959*de75638bSdrh  NATURAL RIGHT JOIN t2
4960*de75638bSdrh  NATURAL FULL JOIN t3
4961*de75638bSdrh  NATURAL INNER JOIN t4
4962*de75638bSdrh  NATURAL FULL JOIN t5
4963*de75638bSdrh  WHERE b BETWEEN 12 AND 17
4964*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4965*de75638bSdrh} {
4966*de75638bSdrh}
4967*de75638bSdrhdo_execsql_test joinB-361 {
4968*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4969*de75638bSdrh  FROM t1
4970*de75638bSdrh  RIGHT JOIN t2 USING(a)
4971*de75638bSdrh  FULL JOIN t3 USING(a)
4972*de75638bSdrh  LEFT JOIN t4 USING(a)
4973*de75638bSdrh  INNER JOIN t5 USING(a)
4974*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4975*de75638bSdrh} {
4976*de75638bSdrh  15 15 15 15 15 15
4977*de75638bSdrh  17  -  - 17  - 17
4978*de75638bSdrh  18  - 18 18  - 18
4979*de75638bSdrh  19  -  - 19 19 19
4980*de75638bSdrh}
4981*de75638bSdrhdo_execsql_test joinB-362 {
4982*de75638bSdrh  SELECT a, c, d, e, f, g
4983*de75638bSdrh  FROM t1
4984*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
4985*de75638bSdrh  FULL JOIN t3 USING(a,b)
4986*de75638bSdrh  LEFT JOIN t4 USING(a,b)
4987*de75638bSdrh  INNER JOIN t5 USING(a,b)
4988*de75638bSdrh  WHERE a<>13
4989*de75638bSdrh  ORDER BY 1 NULLS FIRST;
4990*de75638bSdrh} {
4991*de75638bSdrh  15 35 35 35 35 35
4992*de75638bSdrh  17  -  - 37  - 37
4993*de75638bSdrh  18  - 38 38  - 38
4994*de75638bSdrh  19  -  - 39 39 39
4995*de75638bSdrh}
4996*de75638bSdrhdo_execsql_test joinB-363 {
4997*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
4998*de75638bSdrh  FROM t1
4999*de75638bSdrh  RIGHT JOIN t2 USING(a)
5000*de75638bSdrh  FULL JOIN t3 USING(a)
5001*de75638bSdrh  LEFT JOIN t4 USING(a)
5002*de75638bSdrh  LEFT JOIN t5 USING(a)
5003*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5004*de75638bSdrh} {
5005*de75638bSdrh   -  -  -  -  -  -
5006*de75638bSdrh   -  -  -  -  -  -
5007*de75638bSdrh  11  -  - 11 11  -
5008*de75638bSdrh  12 12 12 12  -  -
5009*de75638bSdrh  13  - 13 13 13  -
5010*de75638bSdrh  15 15 15 15 15 15
5011*de75638bSdrh  17  -  - 17  - 17
5012*de75638bSdrh  18  - 18 18  - 18
5013*de75638bSdrh  19  -  - 19 19 19
5014*de75638bSdrh}
5015*de75638bSdrhdo_execsql_test joinB-364 {
5016*de75638bSdrh  SELECT a, c, d, e, f, g
5017*de75638bSdrh  FROM t1
5018*de75638bSdrh  RIGHT JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
5019*de75638bSdrh  LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
5020*de75638bSdrh  WHERE a<=18
5021*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5022*de75638bSdrh} {
5023*de75638bSdrh  11 31  - 31 31  -
5024*de75638bSdrh  12 32 32 32  -  -
5025*de75638bSdrh  13  - 33 33 33  -
5026*de75638bSdrh  15 35 35 35 35 35
5027*de75638bSdrh  17 37  - 37  -  -
5028*de75638bSdrh  18  - 38 38  -  -
5029*de75638bSdrh}
5030*de75638bSdrhdo_execsql_test joinB-365 {
5031*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5032*de75638bSdrh  FROM t1
5033*de75638bSdrh  RIGHT JOIN t2 USING(a)
5034*de75638bSdrh  FULL JOIN t3 USING(a)
5035*de75638bSdrh  LEFT JOIN t4 USING(a)
5036*de75638bSdrh  RIGHT JOIN t5 USING(a)
5037*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5038*de75638bSdrh} {
5039*de75638bSdrh  15 15 15 15 15 15
5040*de75638bSdrh  17  -  - 17  - 17
5041*de75638bSdrh  18  - 18 18  - 18
5042*de75638bSdrh  19  -  - 19 19 19
5043*de75638bSdrh}
5044*de75638bSdrhdo_execsql_test joinB-366 {
5045*de75638bSdrh  SELECT a, b, c, d, e, f, g
5046*de75638bSdrh  FROM t1
5047*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
5048*de75638bSdrh  FULL JOIN t3 USING(a,b)
5049*de75638bSdrh  LEFT JOIN t4 USING(a,b)
5050*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
5051*de75638bSdrh  WHERE d<>33 OR d IS NULL
5052*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5053*de75638bSdrh} {
5054*de75638bSdrh  15 25 35 35 35 35 35
5055*de75638bSdrh  17 27  -  - 37  - 37
5056*de75638bSdrh  18 28  - 38 38  - 38
5057*de75638bSdrh  19 29  -  - 39 39 39
5058*de75638bSdrh}
5059*de75638bSdrhdo_execsql_test joinB-367 {
5060*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5061*de75638bSdrh  FROM t1
5062*de75638bSdrh  RIGHT JOIN t2 USING(a)
5063*de75638bSdrh  FULL JOIN t3 USING(a)
5064*de75638bSdrh  LEFT JOIN t4 USING(a)
5065*de75638bSdrh  FULL JOIN t5 USING(a)
5066*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5067*de75638bSdrh} {
5068*de75638bSdrh   -  -  -  -  -  -
5069*de75638bSdrh   -  -  -  -  -  -
5070*de75638bSdrh  11  -  - 11 11  -
5071*de75638bSdrh  12 12 12 12  -  -
5072*de75638bSdrh  13  - 13 13 13  -
5073*de75638bSdrh  15 15 15 15 15 15
5074*de75638bSdrh  17  -  - 17  - 17
5075*de75638bSdrh  18  - 18 18  - 18
5076*de75638bSdrh  19  -  - 19 19 19
5077*de75638bSdrh}
5078*de75638bSdrhdo_execsql_test joinB-368 {
5079*de75638bSdrh  SELECT b, c, d, e, f, g
5080*de75638bSdrh  FROM t1
5081*de75638bSdrh  NATURAL RIGHT JOIN t2
5082*de75638bSdrh  NATURAL FULL JOIN t3
5083*de75638bSdrh  NATURAL LEFT JOIN t4
5084*de75638bSdrh  NATURAL FULL JOIN t5
5085*de75638bSdrh  WHERE b BETWEEN 12 AND 17
5086*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5087*de75638bSdrh} {
5088*de75638bSdrh}
5089*de75638bSdrhdo_execsql_test joinB-369 {
5090*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5091*de75638bSdrh  FROM t1
5092*de75638bSdrh  RIGHT JOIN t2 USING(a)
5093*de75638bSdrh  FULL JOIN t3 USING(a)
5094*de75638bSdrh  RIGHT JOIN t4 USING(a)
5095*de75638bSdrh  INNER JOIN t5 USING(a)
5096*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5097*de75638bSdrh} {
5098*de75638bSdrh  15 15 15 15 15 15
5099*de75638bSdrh  19  -  - 19 19 19
5100*de75638bSdrh}
5101*de75638bSdrhdo_execsql_test joinB-370 {
5102*de75638bSdrh  SELECT a, c, d, e, f, g
5103*de75638bSdrh  FROM t1
5104*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
5105*de75638bSdrh  FULL JOIN t3 USING(a,b)
5106*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
5107*de75638bSdrh  INNER JOIN t5 USING(a,b)
5108*de75638bSdrh  WHERE a<>13
5109*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5110*de75638bSdrh} {
5111*de75638bSdrh  15 35 35 35 35 35
5112*de75638bSdrh  19  -  - 39 39 39
5113*de75638bSdrh}
5114*de75638bSdrhdo_execsql_test joinB-371 {
5115*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5116*de75638bSdrh  FROM t1
5117*de75638bSdrh  RIGHT JOIN t2 USING(a)
5118*de75638bSdrh  FULL JOIN t3 USING(a)
5119*de75638bSdrh  RIGHT JOIN t4 USING(a)
5120*de75638bSdrh  LEFT JOIN t5 USING(a)
5121*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5122*de75638bSdrh} {
5123*de75638bSdrh  11  -  - 11 11  -
5124*de75638bSdrh  13  - 13 13 13  -
5125*de75638bSdrh  15 15 15 15 15 15
5126*de75638bSdrh  19  -  - 19 19 19
5127*de75638bSdrh}
5128*de75638bSdrhdo_execsql_test joinB-372 {
5129*de75638bSdrh  SELECT a, c, d, e, f, g
5130*de75638bSdrh  FROM t1
5131*de75638bSdrh  RIGHT JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
5132*de75638bSdrh  RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
5133*de75638bSdrh  WHERE a<=18
5134*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5135*de75638bSdrh} {
5136*de75638bSdrh  11 31  - 31 31  -
5137*de75638bSdrh  13  - 33 33 33  -
5138*de75638bSdrh  15 35 35 35 35 35
5139*de75638bSdrh}
5140*de75638bSdrhdo_execsql_test joinB-373 {
5141*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5142*de75638bSdrh  FROM t1
5143*de75638bSdrh  RIGHT JOIN t2 USING(a)
5144*de75638bSdrh  FULL JOIN t3 USING(a)
5145*de75638bSdrh  RIGHT JOIN t4 USING(a)
5146*de75638bSdrh  RIGHT JOIN t5 USING(a)
5147*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5148*de75638bSdrh} {
5149*de75638bSdrh  15 15 15 15 15 15
5150*de75638bSdrh  17  -  -  -  - 17
5151*de75638bSdrh  18  -  -  -  - 18
5152*de75638bSdrh  19  -  - 19 19 19
5153*de75638bSdrh}
5154*de75638bSdrhdo_execsql_test joinB-374 {
5155*de75638bSdrh  SELECT a, b, c, d, e, f, g
5156*de75638bSdrh  FROM t1
5157*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
5158*de75638bSdrh  FULL JOIN t3 USING(a,b)
5159*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
5160*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
5161*de75638bSdrh  WHERE d<>33 OR d IS NULL
5162*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5163*de75638bSdrh} {
5164*de75638bSdrh  15 25 35 35 35 35 35
5165*de75638bSdrh  17 27  -  -  -  - 37
5166*de75638bSdrh  18 28  -  -  -  - 38
5167*de75638bSdrh  19 29  -  - 39 39 39
5168*de75638bSdrh}
5169*de75638bSdrhdo_execsql_test joinB-375 {
5170*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5171*de75638bSdrh  FROM t1
5172*de75638bSdrh  RIGHT JOIN t2 USING(a)
5173*de75638bSdrh  FULL JOIN t3 USING(a)
5174*de75638bSdrh  RIGHT JOIN t4 USING(a)
5175*de75638bSdrh  FULL JOIN t5 USING(a)
5176*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5177*de75638bSdrh} {
5178*de75638bSdrh  11  -  - 11 11  -
5179*de75638bSdrh  13  - 13 13 13  -
5180*de75638bSdrh  15 15 15 15 15 15
5181*de75638bSdrh  17  -  -  -  - 17
5182*de75638bSdrh  18  -  -  -  - 18
5183*de75638bSdrh  19  -  - 19 19 19
5184*de75638bSdrh}
5185*de75638bSdrhdo_execsql_test joinB-376 {
5186*de75638bSdrh  SELECT b, c, d, e, f, g
5187*de75638bSdrh  FROM t1
5188*de75638bSdrh  NATURAL RIGHT JOIN t2
5189*de75638bSdrh  NATURAL FULL JOIN t3
5190*de75638bSdrh  NATURAL RIGHT JOIN t4
5191*de75638bSdrh  NATURAL FULL JOIN t5
5192*de75638bSdrh  WHERE b BETWEEN 12 AND 17
5193*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5194*de75638bSdrh} {
5195*de75638bSdrh}
5196*de75638bSdrhdo_execsql_test joinB-377 {
5197*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5198*de75638bSdrh  FROM t1
5199*de75638bSdrh  RIGHT JOIN t2 USING(a)
5200*de75638bSdrh  FULL JOIN t3 USING(a)
5201*de75638bSdrh  FULL JOIN t4 USING(a)
5202*de75638bSdrh  INNER JOIN t5 USING(a)
5203*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5204*de75638bSdrh} {
5205*de75638bSdrh  15 15 15 15 15 15
5206*de75638bSdrh  17  -  - 17  - 17
5207*de75638bSdrh  18  - 18 18  - 18
5208*de75638bSdrh  19  -  - 19 19 19
5209*de75638bSdrh}
5210*de75638bSdrhdo_execsql_test joinB-378 {
5211*de75638bSdrh  SELECT a, c, d, e, f, g
5212*de75638bSdrh  FROM t1
5213*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
5214*de75638bSdrh  FULL JOIN t3 USING(a,b)
5215*de75638bSdrh  FULL JOIN t4 USING(a,b)
5216*de75638bSdrh  INNER JOIN t5 USING(a,b)
5217*de75638bSdrh  WHERE a<>13
5218*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5219*de75638bSdrh} {
5220*de75638bSdrh  15 35 35 35 35 35
5221*de75638bSdrh  17  -  - 37  - 37
5222*de75638bSdrh  18  - 38 38  - 38
5223*de75638bSdrh  19  -  - 39 39 39
5224*de75638bSdrh}
5225*de75638bSdrhdo_execsql_test joinB-379 {
5226*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5227*de75638bSdrh  FROM t1
5228*de75638bSdrh  RIGHT JOIN t2 USING(a)
5229*de75638bSdrh  FULL JOIN t3 USING(a)
5230*de75638bSdrh  FULL JOIN t4 USING(a)
5231*de75638bSdrh  LEFT JOIN t5 USING(a)
5232*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5233*de75638bSdrh} {
5234*de75638bSdrh   -  -  -  -  -  -
5235*de75638bSdrh   -  -  -  -  -  -
5236*de75638bSdrh  11  -  - 11 11  -
5237*de75638bSdrh  12 12 12 12  -  -
5238*de75638bSdrh  13  - 13 13 13  -
5239*de75638bSdrh  15 15 15 15 15 15
5240*de75638bSdrh  17  -  - 17  - 17
5241*de75638bSdrh  18  - 18 18  - 18
5242*de75638bSdrh  19  -  - 19 19 19
5243*de75638bSdrh}
5244*de75638bSdrhdo_execsql_test joinB-380 {
5245*de75638bSdrh  SELECT a, c, d, e, f, g
5246*de75638bSdrh  FROM t1
5247*de75638bSdrh  RIGHT JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
5248*de75638bSdrh  FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
5249*de75638bSdrh  WHERE a<=18
5250*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5251*de75638bSdrh} {
5252*de75638bSdrh  11 31  - 31 31  -
5253*de75638bSdrh  12 32 32 32  -  -
5254*de75638bSdrh  13  - 33 33 33  -
5255*de75638bSdrh  15 35 35 35 35 35
5256*de75638bSdrh  17 37  - 37  -  -
5257*de75638bSdrh  18  - 38 38  -  -
5258*de75638bSdrh}
5259*de75638bSdrhdo_execsql_test joinB-381 {
5260*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5261*de75638bSdrh  FROM t1
5262*de75638bSdrh  RIGHT JOIN t2 USING(a)
5263*de75638bSdrh  FULL JOIN t3 USING(a)
5264*de75638bSdrh  FULL JOIN t4 USING(a)
5265*de75638bSdrh  RIGHT JOIN t5 USING(a)
5266*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5267*de75638bSdrh} {
5268*de75638bSdrh  15 15 15 15 15 15
5269*de75638bSdrh  17  -  - 17  - 17
5270*de75638bSdrh  18  - 18 18  - 18
5271*de75638bSdrh  19  -  - 19 19 19
5272*de75638bSdrh}
5273*de75638bSdrhdo_execsql_test joinB-382 {
5274*de75638bSdrh  SELECT a, b, c, d, e, f, g
5275*de75638bSdrh  FROM t1
5276*de75638bSdrh  RIGHT JOIN t2 USING(a,b)
5277*de75638bSdrh  FULL JOIN t3 USING(a,b)
5278*de75638bSdrh  FULL JOIN t4 USING(a,b)
5279*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
5280*de75638bSdrh  WHERE d<>33 OR d IS NULL
5281*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5282*de75638bSdrh} {
5283*de75638bSdrh  15 25 35 35 35 35 35
5284*de75638bSdrh  17 27  -  - 37  - 37
5285*de75638bSdrh  18 28  - 38 38  - 38
5286*de75638bSdrh  19 29  -  - 39 39 39
5287*de75638bSdrh}
5288*de75638bSdrhdo_execsql_test joinB-383 {
5289*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5290*de75638bSdrh  FROM t1
5291*de75638bSdrh  RIGHT JOIN t2 USING(a)
5292*de75638bSdrh  FULL JOIN t3 USING(a)
5293*de75638bSdrh  FULL JOIN t4 USING(a)
5294*de75638bSdrh  FULL JOIN t5 USING(a)
5295*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5296*de75638bSdrh} {
5297*de75638bSdrh   -  -  -  -  -  -
5298*de75638bSdrh   -  -  -  -  -  -
5299*de75638bSdrh  11  -  - 11 11  -
5300*de75638bSdrh  12 12 12 12  -  -
5301*de75638bSdrh  13  - 13 13 13  -
5302*de75638bSdrh  15 15 15 15 15 15
5303*de75638bSdrh  17  -  - 17  - 17
5304*de75638bSdrh  18  - 18 18  - 18
5305*de75638bSdrh  19  -  - 19 19 19
5306*de75638bSdrh}
5307*de75638bSdrhdo_execsql_test joinB-384 {
5308*de75638bSdrh  SELECT b, c, d, e, f, g
5309*de75638bSdrh  FROM t1
5310*de75638bSdrh  NATURAL RIGHT JOIN t2
5311*de75638bSdrh  NATURAL FULL JOIN t3
5312*de75638bSdrh  NATURAL FULL JOIN t4
5313*de75638bSdrh  NATURAL FULL JOIN t5
5314*de75638bSdrh  WHERE b BETWEEN 12 AND 17
5315*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5316*de75638bSdrh} {
5317*de75638bSdrh}
5318*de75638bSdrhdo_execsql_test joinB-385 {
5319*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5320*de75638bSdrh  FROM t1
5321*de75638bSdrh  FULL JOIN t2 USING(a)
5322*de75638bSdrh  INNER JOIN t3 USING(a)
5323*de75638bSdrh  INNER JOIN t4 USING(a)
5324*de75638bSdrh  INNER JOIN t5 USING(a)
5325*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5326*de75638bSdrh} {
5327*de75638bSdrh  15 15 15 15 15 15
5328*de75638bSdrh}
5329*de75638bSdrhdo_execsql_test joinB-386 {
5330*de75638bSdrh  SELECT a, c, d, e, f, g
5331*de75638bSdrh  FROM t1
5332*de75638bSdrh  FULL JOIN t2 USING(a,b)
5333*de75638bSdrh  INNER JOIN t3 USING(a,b)
5334*de75638bSdrh  INNER JOIN t4 USING(a,b)
5335*de75638bSdrh  INNER JOIN t5 USING(a,b)
5336*de75638bSdrh  WHERE a<>13
5337*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5338*de75638bSdrh} {
5339*de75638bSdrh  15 35 35 35 35 35
5340*de75638bSdrh}
5341*de75638bSdrhdo_execsql_test joinB-387 {
5342*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5343*de75638bSdrh  FROM t1
5344*de75638bSdrh  FULL JOIN t2 USING(a)
5345*de75638bSdrh  INNER JOIN t3 USING(a)
5346*de75638bSdrh  INNER JOIN t4 USING(a)
5347*de75638bSdrh  LEFT JOIN t5 USING(a)
5348*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5349*de75638bSdrh} {
5350*de75638bSdrh  11 11  - 11 11  -
5351*de75638bSdrh  13  - 13 13 13  -
5352*de75638bSdrh  15 15 15 15 15 15
5353*de75638bSdrh}
5354*de75638bSdrhdo_execsql_test joinB-388 {
5355*de75638bSdrh  SELECT a, c, d, e, f, g
5356*de75638bSdrh  FROM t1
5357*de75638bSdrh  FULL JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
5358*de75638bSdrh  INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
5359*de75638bSdrh  WHERE a<=18
5360*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5361*de75638bSdrh} {
5362*de75638bSdrh  11 31  -  - 31  -
5363*de75638bSdrh  13  - 33 33 33  -
5364*de75638bSdrh  15 35 35 35 35 35
5365*de75638bSdrh}
5366*de75638bSdrhdo_execsql_test joinB-389 {
5367*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5368*de75638bSdrh  FROM t1
5369*de75638bSdrh  FULL JOIN t2 USING(a)
5370*de75638bSdrh  INNER JOIN t3 USING(a)
5371*de75638bSdrh  INNER JOIN t4 USING(a)
5372*de75638bSdrh  RIGHT JOIN t5 USING(a)
5373*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5374*de75638bSdrh} {
5375*de75638bSdrh  15 15 15 15 15 15
5376*de75638bSdrh  17  -  -  -  - 17
5377*de75638bSdrh  18  -  -  -  - 18
5378*de75638bSdrh  19  -  -  -  - 19
5379*de75638bSdrh}
5380*de75638bSdrhdo_execsql_test joinB-390 {
5381*de75638bSdrh  SELECT a, b, c, d, e, f, g
5382*de75638bSdrh  FROM t1
5383*de75638bSdrh  FULL JOIN t2 USING(a,b)
5384*de75638bSdrh  INNER JOIN t3 USING(a,b)
5385*de75638bSdrh  INNER JOIN t4 USING(a,b)
5386*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
5387*de75638bSdrh  WHERE d<>33 OR d IS NULL
5388*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5389*de75638bSdrh} {
5390*de75638bSdrh  15 25 35 35 35 35 35
5391*de75638bSdrh  17 27  -  -  -  - 37
5392*de75638bSdrh  18 28  -  -  -  - 38
5393*de75638bSdrh  19 29  -  -  -  - 39
5394*de75638bSdrh}
5395*de75638bSdrhdo_execsql_test joinB-391 {
5396*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5397*de75638bSdrh  FROM t1
5398*de75638bSdrh  FULL JOIN t2 USING(a)
5399*de75638bSdrh  INNER JOIN t3 USING(a)
5400*de75638bSdrh  INNER JOIN t4 USING(a)
5401*de75638bSdrh  FULL JOIN t5 USING(a)
5402*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5403*de75638bSdrh} {
5404*de75638bSdrh  11 11  - 11 11  -
5405*de75638bSdrh  13  - 13 13 13  -
5406*de75638bSdrh  15 15 15 15 15 15
5407*de75638bSdrh  17  -  -  -  - 17
5408*de75638bSdrh  18  -  -  -  - 18
5409*de75638bSdrh  19  -  -  -  - 19
5410*de75638bSdrh}
5411*de75638bSdrhdo_execsql_test joinB-392 {
5412*de75638bSdrh  SELECT b, c, d, e, f, g
5413*de75638bSdrh  FROM t1
5414*de75638bSdrh  NATURAL FULL JOIN t2
5415*de75638bSdrh  NATURAL INNER JOIN t3
5416*de75638bSdrh  NATURAL INNER JOIN t4
5417*de75638bSdrh  NATURAL FULL JOIN t5
5418*de75638bSdrh  WHERE b BETWEEN 12 AND 17
5419*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5420*de75638bSdrh} {
5421*de75638bSdrh}
5422*de75638bSdrhdo_execsql_test joinB-393 {
5423*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5424*de75638bSdrh  FROM t1
5425*de75638bSdrh  FULL JOIN t2 USING(a)
5426*de75638bSdrh  INNER JOIN t3 USING(a)
5427*de75638bSdrh  LEFT JOIN t4 USING(a)
5428*de75638bSdrh  INNER JOIN t5 USING(a)
5429*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5430*de75638bSdrh} {
5431*de75638bSdrh  15 15 15 15 15 15
5432*de75638bSdrh  17 17  - 17  - 17
5433*de75638bSdrh  18  - 18 18  - 18
5434*de75638bSdrh}
5435*de75638bSdrhdo_execsql_test joinB-394 {
5436*de75638bSdrh  SELECT a, c, d, e, f, g
5437*de75638bSdrh  FROM t1
5438*de75638bSdrh  FULL JOIN t2 USING(a,b)
5439*de75638bSdrh  INNER JOIN t3 USING(a,b)
5440*de75638bSdrh  LEFT JOIN t4 USING(a,b)
5441*de75638bSdrh  INNER JOIN t5 USING(a,b)
5442*de75638bSdrh  WHERE a<>13
5443*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5444*de75638bSdrh} {
5445*de75638bSdrh  15 35 35 35 35 35
5446*de75638bSdrh  17 37  - 37  - 37
5447*de75638bSdrh  18  - 38 38  - 38
5448*de75638bSdrh}
5449*de75638bSdrhdo_execsql_test joinB-395 {
5450*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5451*de75638bSdrh  FROM t1
5452*de75638bSdrh  FULL JOIN t2 USING(a)
5453*de75638bSdrh  INNER JOIN t3 USING(a)
5454*de75638bSdrh  LEFT JOIN t4 USING(a)
5455*de75638bSdrh  LEFT JOIN t5 USING(a)
5456*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5457*de75638bSdrh} {
5458*de75638bSdrh  11 11  - 11 11  -
5459*de75638bSdrh  12 12 12 12  -  -
5460*de75638bSdrh  13  - 13 13 13  -
5461*de75638bSdrh  15 15 15 15 15 15
5462*de75638bSdrh  17 17  - 17  - 17
5463*de75638bSdrh  18  - 18 18  - 18
5464*de75638bSdrh}
5465*de75638bSdrhdo_execsql_test joinB-396 {
5466*de75638bSdrh  SELECT a, c, d, e, f, g
5467*de75638bSdrh  FROM t1
5468*de75638bSdrh  FULL JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
5469*de75638bSdrh  LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
5470*de75638bSdrh  WHERE a<=18
5471*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5472*de75638bSdrh} {
5473*de75638bSdrh  11 31  -  - 31  -
5474*de75638bSdrh  12 32 32 32  -  -
5475*de75638bSdrh  13  - 33 33 33  -
5476*de75638bSdrh  15 35 35 35 35 35
5477*de75638bSdrh  17 37  -  -  -  -
5478*de75638bSdrh  18  - 38 38  -  -
5479*de75638bSdrh}
5480*de75638bSdrhdo_execsql_test joinB-397 {
5481*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5482*de75638bSdrh  FROM t1
5483*de75638bSdrh  FULL JOIN t2 USING(a)
5484*de75638bSdrh  INNER JOIN t3 USING(a)
5485*de75638bSdrh  LEFT JOIN t4 USING(a)
5486*de75638bSdrh  RIGHT JOIN t5 USING(a)
5487*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5488*de75638bSdrh} {
5489*de75638bSdrh  15 15 15 15 15 15
5490*de75638bSdrh  17 17  - 17  - 17
5491*de75638bSdrh  18  - 18 18  - 18
5492*de75638bSdrh  19  -  -  -  - 19
5493*de75638bSdrh}
5494*de75638bSdrhdo_execsql_test joinB-398 {
5495*de75638bSdrh  SELECT a, b, c, d, e, f, g
5496*de75638bSdrh  FROM t1
5497*de75638bSdrh  FULL JOIN t2 USING(a,b)
5498*de75638bSdrh  INNER JOIN t3 USING(a,b)
5499*de75638bSdrh  LEFT JOIN t4 USING(a,b)
5500*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
5501*de75638bSdrh  WHERE d<>33 OR d IS NULL
5502*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5503*de75638bSdrh} {
5504*de75638bSdrh  15 25 35 35 35 35 35
5505*de75638bSdrh  17 27 37  - 37  - 37
5506*de75638bSdrh  18 28  - 38 38  - 38
5507*de75638bSdrh  19 29  -  -  -  - 39
5508*de75638bSdrh}
5509*de75638bSdrhdo_execsql_test joinB-399 {
5510*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5511*de75638bSdrh  FROM t1
5512*de75638bSdrh  FULL JOIN t2 USING(a)
5513*de75638bSdrh  INNER JOIN t3 USING(a)
5514*de75638bSdrh  LEFT JOIN t4 USING(a)
5515*de75638bSdrh  FULL JOIN t5 USING(a)
5516*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5517*de75638bSdrh} {
5518*de75638bSdrh  11 11  - 11 11  -
5519*de75638bSdrh  12 12 12 12  -  -
5520*de75638bSdrh  13  - 13 13 13  -
5521*de75638bSdrh  15 15 15 15 15 15
5522*de75638bSdrh  17 17  - 17  - 17
5523*de75638bSdrh  18  - 18 18  - 18
5524*de75638bSdrh  19  -  -  -  - 19
5525*de75638bSdrh}
5526*de75638bSdrhdo_execsql_test joinB-400 {
5527*de75638bSdrh  SELECT b, c, d, e, f, g
5528*de75638bSdrh  FROM t1
5529*de75638bSdrh  NATURAL FULL JOIN t2
5530*de75638bSdrh  NATURAL INNER JOIN t3
5531*de75638bSdrh  NATURAL LEFT JOIN t4
5532*de75638bSdrh  NATURAL FULL JOIN t5
5533*de75638bSdrh  WHERE b BETWEEN 12 AND 17
5534*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5535*de75638bSdrh} {
5536*de75638bSdrh}
5537*de75638bSdrhdo_execsql_test joinB-401 {
5538*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5539*de75638bSdrh  FROM t1
5540*de75638bSdrh  FULL JOIN t2 USING(a)
5541*de75638bSdrh  INNER JOIN t3 USING(a)
5542*de75638bSdrh  RIGHT JOIN t4 USING(a)
5543*de75638bSdrh  INNER JOIN t5 USING(a)
5544*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5545*de75638bSdrh} {
5546*de75638bSdrh  15 15 15 15 15 15
5547*de75638bSdrh  19  -  -  - 19 19
5548*de75638bSdrh}
5549*de75638bSdrhdo_execsql_test joinB-402 {
5550*de75638bSdrh  SELECT a, c, d, e, f, g
5551*de75638bSdrh  FROM t1
5552*de75638bSdrh  FULL JOIN t2 USING(a,b)
5553*de75638bSdrh  INNER JOIN t3 USING(a,b)
5554*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
5555*de75638bSdrh  INNER JOIN t5 USING(a,b)
5556*de75638bSdrh  WHERE a<>13
5557*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5558*de75638bSdrh} {
5559*de75638bSdrh  15 35 35 35 35 35
5560*de75638bSdrh  19  -  -  - 39 39
5561*de75638bSdrh}
5562*de75638bSdrhdo_execsql_test joinB-403 {
5563*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5564*de75638bSdrh  FROM t1
5565*de75638bSdrh  FULL JOIN t2 USING(a)
5566*de75638bSdrh  INNER JOIN t3 USING(a)
5567*de75638bSdrh  RIGHT JOIN t4 USING(a)
5568*de75638bSdrh  LEFT JOIN t5 USING(a)
5569*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5570*de75638bSdrh} {
5571*de75638bSdrh  11 11  - 11 11  -
5572*de75638bSdrh  13  - 13 13 13  -
5573*de75638bSdrh  15 15 15 15 15 15
5574*de75638bSdrh  19  -  -  - 19 19
5575*de75638bSdrh}
5576*de75638bSdrhdo_execsql_test joinB-404 {
5577*de75638bSdrh  SELECT a, c, d, e, f, g
5578*de75638bSdrh  FROM t1
5579*de75638bSdrh  FULL JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
5580*de75638bSdrh  RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
5581*de75638bSdrh  WHERE a<=18
5582*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5583*de75638bSdrh} {
5584*de75638bSdrh  11 31  -  - 31  -
5585*de75638bSdrh  13  - 33 33 33  -
5586*de75638bSdrh  15 35 35 35 35 35
5587*de75638bSdrh}
5588*de75638bSdrhdo_execsql_test joinB-405 {
5589*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5590*de75638bSdrh  FROM t1
5591*de75638bSdrh  FULL JOIN t2 USING(a)
5592*de75638bSdrh  INNER JOIN t3 USING(a)
5593*de75638bSdrh  RIGHT JOIN t4 USING(a)
5594*de75638bSdrh  RIGHT JOIN t5 USING(a)
5595*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5596*de75638bSdrh} {
5597*de75638bSdrh  15 15 15 15 15 15
5598*de75638bSdrh  17  -  -  -  - 17
5599*de75638bSdrh  18  -  -  -  - 18
5600*de75638bSdrh  19  -  -  - 19 19
5601*de75638bSdrh}
5602*de75638bSdrhdo_execsql_test joinB-406 {
5603*de75638bSdrh  SELECT a, b, c, d, e, f, g
5604*de75638bSdrh  FROM t1
5605*de75638bSdrh  FULL JOIN t2 USING(a,b)
5606*de75638bSdrh  INNER JOIN t3 USING(a,b)
5607*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
5608*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
5609*de75638bSdrh  WHERE d<>33 OR d IS NULL
5610*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5611*de75638bSdrh} {
5612*de75638bSdrh  15 25 35 35 35 35 35
5613*de75638bSdrh  17 27  -  -  -  - 37
5614*de75638bSdrh  18 28  -  -  -  - 38
5615*de75638bSdrh  19 29  -  -  - 39 39
5616*de75638bSdrh}
5617*de75638bSdrhdo_execsql_test joinB-407 {
5618*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5619*de75638bSdrh  FROM t1
5620*de75638bSdrh  FULL JOIN t2 USING(a)
5621*de75638bSdrh  INNER JOIN t3 USING(a)
5622*de75638bSdrh  RIGHT JOIN t4 USING(a)
5623*de75638bSdrh  FULL JOIN t5 USING(a)
5624*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5625*de75638bSdrh} {
5626*de75638bSdrh  11 11  - 11 11  -
5627*de75638bSdrh  13  - 13 13 13  -
5628*de75638bSdrh  15 15 15 15 15 15
5629*de75638bSdrh  17  -  -  -  - 17
5630*de75638bSdrh  18  -  -  -  - 18
5631*de75638bSdrh  19  -  -  - 19 19
5632*de75638bSdrh}
5633*de75638bSdrhdo_execsql_test joinB-408 {
5634*de75638bSdrh  SELECT b, c, d, e, f, g
5635*de75638bSdrh  FROM t1
5636*de75638bSdrh  NATURAL FULL JOIN t2
5637*de75638bSdrh  NATURAL INNER JOIN t3
5638*de75638bSdrh  NATURAL RIGHT JOIN t4
5639*de75638bSdrh  NATURAL FULL JOIN t5
5640*de75638bSdrh  WHERE b BETWEEN 12 AND 17
5641*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5642*de75638bSdrh} {
5643*de75638bSdrh}
5644*de75638bSdrhdo_execsql_test joinB-409 {
5645*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5646*de75638bSdrh  FROM t1
5647*de75638bSdrh  FULL JOIN t2 USING(a)
5648*de75638bSdrh  INNER JOIN t3 USING(a)
5649*de75638bSdrh  FULL JOIN t4 USING(a)
5650*de75638bSdrh  INNER JOIN t5 USING(a)
5651*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5652*de75638bSdrh} {
5653*de75638bSdrh  15 15 15 15 15 15
5654*de75638bSdrh  17 17  - 17  - 17
5655*de75638bSdrh  18  - 18 18  - 18
5656*de75638bSdrh  19  -  -  - 19 19
5657*de75638bSdrh}
5658*de75638bSdrhdo_execsql_test joinB-410 {
5659*de75638bSdrh  SELECT a, c, d, e, f, g
5660*de75638bSdrh  FROM t1
5661*de75638bSdrh  FULL JOIN t2 USING(a,b)
5662*de75638bSdrh  INNER JOIN t3 USING(a,b)
5663*de75638bSdrh  FULL JOIN t4 USING(a,b)
5664*de75638bSdrh  INNER JOIN t5 USING(a,b)
5665*de75638bSdrh  WHERE a<>13
5666*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5667*de75638bSdrh} {
5668*de75638bSdrh  15 35 35 35 35 35
5669*de75638bSdrh  17 37  - 37  - 37
5670*de75638bSdrh  18  - 38 38  - 38
5671*de75638bSdrh  19  -  -  - 39 39
5672*de75638bSdrh}
5673*de75638bSdrhdo_execsql_test joinB-411 {
5674*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5675*de75638bSdrh  FROM t1
5676*de75638bSdrh  FULL JOIN t2 USING(a)
5677*de75638bSdrh  INNER JOIN t3 USING(a)
5678*de75638bSdrh  FULL JOIN t4 USING(a)
5679*de75638bSdrh  LEFT JOIN t5 USING(a)
5680*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5681*de75638bSdrh} {
5682*de75638bSdrh  11 11  - 11 11  -
5683*de75638bSdrh  12 12 12 12  -  -
5684*de75638bSdrh  13  - 13 13 13  -
5685*de75638bSdrh  15 15 15 15 15 15
5686*de75638bSdrh  17 17  - 17  - 17
5687*de75638bSdrh  18  - 18 18  - 18
5688*de75638bSdrh  19  -  -  - 19 19
5689*de75638bSdrh}
5690*de75638bSdrhdo_execsql_test joinB-412 {
5691*de75638bSdrh  SELECT a, c, d, e, f, g
5692*de75638bSdrh  FROM t1
5693*de75638bSdrh  FULL JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
5694*de75638bSdrh  FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
5695*de75638bSdrh  WHERE a<=18
5696*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5697*de75638bSdrh} {
5698*de75638bSdrh  11 31  -  - 31  -
5699*de75638bSdrh  12 32 32 32  -  -
5700*de75638bSdrh  13  - 33 33 33  -
5701*de75638bSdrh  15 35 35 35 35 35
5702*de75638bSdrh  17 37  -  -  -  -
5703*de75638bSdrh  18  - 38 38  -  -
5704*de75638bSdrh}
5705*de75638bSdrhdo_execsql_test joinB-413 {
5706*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5707*de75638bSdrh  FROM t1
5708*de75638bSdrh  FULL JOIN t2 USING(a)
5709*de75638bSdrh  INNER JOIN t3 USING(a)
5710*de75638bSdrh  FULL JOIN t4 USING(a)
5711*de75638bSdrh  RIGHT JOIN t5 USING(a)
5712*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5713*de75638bSdrh} {
5714*de75638bSdrh  15 15 15 15 15 15
5715*de75638bSdrh  17 17  - 17  - 17
5716*de75638bSdrh  18  - 18 18  - 18
5717*de75638bSdrh  19  -  -  - 19 19
5718*de75638bSdrh}
5719*de75638bSdrhdo_execsql_test joinB-414 {
5720*de75638bSdrh  SELECT a, b, c, d, e, f, g
5721*de75638bSdrh  FROM t1
5722*de75638bSdrh  FULL JOIN t2 USING(a,b)
5723*de75638bSdrh  INNER JOIN t3 USING(a,b)
5724*de75638bSdrh  FULL JOIN t4 USING(a,b)
5725*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
5726*de75638bSdrh  WHERE d<>33 OR d IS NULL
5727*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5728*de75638bSdrh} {
5729*de75638bSdrh  15 25 35 35 35 35 35
5730*de75638bSdrh  17 27 37  - 37  - 37
5731*de75638bSdrh  18 28  - 38 38  - 38
5732*de75638bSdrh  19 29  -  -  - 39 39
5733*de75638bSdrh}
5734*de75638bSdrhdo_execsql_test joinB-415 {
5735*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5736*de75638bSdrh  FROM t1
5737*de75638bSdrh  FULL JOIN t2 USING(a)
5738*de75638bSdrh  INNER JOIN t3 USING(a)
5739*de75638bSdrh  FULL JOIN t4 USING(a)
5740*de75638bSdrh  FULL JOIN t5 USING(a)
5741*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5742*de75638bSdrh} {
5743*de75638bSdrh  11 11  - 11 11  -
5744*de75638bSdrh  12 12 12 12  -  -
5745*de75638bSdrh  13  - 13 13 13  -
5746*de75638bSdrh  15 15 15 15 15 15
5747*de75638bSdrh  17 17  - 17  - 17
5748*de75638bSdrh  18  - 18 18  - 18
5749*de75638bSdrh  19  -  -  - 19 19
5750*de75638bSdrh}
5751*de75638bSdrhdo_execsql_test joinB-416 {
5752*de75638bSdrh  SELECT b, c, d, e, f, g
5753*de75638bSdrh  FROM t1
5754*de75638bSdrh  NATURAL FULL JOIN t2
5755*de75638bSdrh  NATURAL INNER JOIN t3
5756*de75638bSdrh  NATURAL FULL JOIN t4
5757*de75638bSdrh  NATURAL FULL JOIN t5
5758*de75638bSdrh  WHERE b BETWEEN 12 AND 17
5759*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5760*de75638bSdrh} {
5761*de75638bSdrh}
5762*de75638bSdrhdo_execsql_test joinB-417 {
5763*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5764*de75638bSdrh  FROM t1
5765*de75638bSdrh  FULL JOIN t2 USING(a)
5766*de75638bSdrh  LEFT JOIN t3 USING(a)
5767*de75638bSdrh  INNER JOIN t4 USING(a)
5768*de75638bSdrh  INNER JOIN t5 USING(a)
5769*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5770*de75638bSdrh} {
5771*de75638bSdrh  15 15 15 15 15 15
5772*de75638bSdrh}
5773*de75638bSdrhdo_execsql_test joinB-418 {
5774*de75638bSdrh  SELECT a, c, d, e, f, g
5775*de75638bSdrh  FROM t1
5776*de75638bSdrh  FULL JOIN t2 USING(a,b)
5777*de75638bSdrh  LEFT JOIN t3 USING(a,b)
5778*de75638bSdrh  INNER JOIN t4 USING(a,b)
5779*de75638bSdrh  INNER JOIN t5 USING(a,b)
5780*de75638bSdrh  WHERE a<>13
5781*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5782*de75638bSdrh} {
5783*de75638bSdrh  15 35 35 35 35 35
5784*de75638bSdrh}
5785*de75638bSdrhdo_execsql_test joinB-419 {
5786*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5787*de75638bSdrh  FROM t1
5788*de75638bSdrh  FULL JOIN t2 USING(a)
5789*de75638bSdrh  LEFT JOIN t3 USING(a)
5790*de75638bSdrh  INNER JOIN t4 USING(a)
5791*de75638bSdrh  LEFT JOIN t5 USING(a)
5792*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5793*de75638bSdrh} {
5794*de75638bSdrh  11 11  - 11 11  -
5795*de75638bSdrh  13  - 13 13 13  -
5796*de75638bSdrh  15 15 15 15 15 15
5797*de75638bSdrh}
5798*de75638bSdrhdo_execsql_test joinB-420 {
5799*de75638bSdrh  SELECT a, c, d, e, f, g
5800*de75638bSdrh  FROM t1
5801*de75638bSdrh  FULL JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
5802*de75638bSdrh  INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
5803*de75638bSdrh  WHERE a<=18
5804*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5805*de75638bSdrh} {
5806*de75638bSdrh  11 31  -  - 31  -
5807*de75638bSdrh  13  - 33 33 33  -
5808*de75638bSdrh  15 35 35 35 35 35
5809*de75638bSdrh}
5810*de75638bSdrhdo_execsql_test joinB-421 {
5811*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5812*de75638bSdrh  FROM t1
5813*de75638bSdrh  FULL JOIN t2 USING(a)
5814*de75638bSdrh  LEFT JOIN t3 USING(a)
5815*de75638bSdrh  INNER JOIN t4 USING(a)
5816*de75638bSdrh  RIGHT JOIN t5 USING(a)
5817*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5818*de75638bSdrh} {
5819*de75638bSdrh  15 15 15 15 15 15
5820*de75638bSdrh  17  -  -  -  - 17
5821*de75638bSdrh  18  -  -  -  - 18
5822*de75638bSdrh  19  -  -  -  - 19
5823*de75638bSdrh}
5824*de75638bSdrhdo_execsql_test joinB-422 {
5825*de75638bSdrh  SELECT a, b, c, d, e, f, g
5826*de75638bSdrh  FROM t1
5827*de75638bSdrh  FULL JOIN t2 USING(a,b)
5828*de75638bSdrh  LEFT JOIN t3 USING(a,b)
5829*de75638bSdrh  INNER JOIN t4 USING(a,b)
5830*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
5831*de75638bSdrh  WHERE d<>33 OR d IS NULL
5832*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5833*de75638bSdrh} {
5834*de75638bSdrh  15 25 35 35 35 35 35
5835*de75638bSdrh  17 27  -  -  -  - 37
5836*de75638bSdrh  18 28  -  -  -  - 38
5837*de75638bSdrh  19 29  -  -  -  - 39
5838*de75638bSdrh}
5839*de75638bSdrhdo_execsql_test joinB-423 {
5840*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5841*de75638bSdrh  FROM t1
5842*de75638bSdrh  FULL JOIN t2 USING(a)
5843*de75638bSdrh  LEFT JOIN t3 USING(a)
5844*de75638bSdrh  INNER JOIN t4 USING(a)
5845*de75638bSdrh  FULL JOIN t5 USING(a)
5846*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5847*de75638bSdrh} {
5848*de75638bSdrh  11 11  - 11 11  -
5849*de75638bSdrh  13  - 13 13 13  -
5850*de75638bSdrh  15 15 15 15 15 15
5851*de75638bSdrh  17  -  -  -  - 17
5852*de75638bSdrh  18  -  -  -  - 18
5853*de75638bSdrh  19  -  -  -  - 19
5854*de75638bSdrh}
5855*de75638bSdrhdo_execsql_test joinB-424 {
5856*de75638bSdrh  SELECT b, c, d, e, f, g
5857*de75638bSdrh  FROM t1
5858*de75638bSdrh  NATURAL FULL JOIN t2
5859*de75638bSdrh  NATURAL LEFT JOIN t3
5860*de75638bSdrh  NATURAL INNER JOIN t4
5861*de75638bSdrh  NATURAL FULL JOIN t5
5862*de75638bSdrh  WHERE b BETWEEN 12 AND 17
5863*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5864*de75638bSdrh} {
5865*de75638bSdrh}
5866*de75638bSdrhdo_execsql_test joinB-425 {
5867*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5868*de75638bSdrh  FROM t1
5869*de75638bSdrh  FULL JOIN t2 USING(a)
5870*de75638bSdrh  LEFT JOIN t3 USING(a)
5871*de75638bSdrh  LEFT JOIN t4 USING(a)
5872*de75638bSdrh  INNER JOIN t5 USING(a)
5873*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5874*de75638bSdrh} {
5875*de75638bSdrh  15 15 15 15 15 15
5876*de75638bSdrh  17 17  - 17  - 17
5877*de75638bSdrh  18  - 18 18  - 18
5878*de75638bSdrh}
5879*de75638bSdrhdo_execsql_test joinB-426 {
5880*de75638bSdrh  SELECT a, c, d, e, f, g
5881*de75638bSdrh  FROM t1
5882*de75638bSdrh  FULL JOIN t2 USING(a,b)
5883*de75638bSdrh  LEFT JOIN t3 USING(a,b)
5884*de75638bSdrh  LEFT JOIN t4 USING(a,b)
5885*de75638bSdrh  INNER JOIN t5 USING(a,b)
5886*de75638bSdrh  WHERE a<>13
5887*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5888*de75638bSdrh} {
5889*de75638bSdrh  15 35 35 35 35 35
5890*de75638bSdrh  17 37  - 37  - 37
5891*de75638bSdrh  18  - 38 38  - 38
5892*de75638bSdrh}
5893*de75638bSdrhdo_execsql_test joinB-427 {
5894*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5895*de75638bSdrh  FROM t1
5896*de75638bSdrh  FULL JOIN t2 USING(a)
5897*de75638bSdrh  LEFT JOIN t3 USING(a)
5898*de75638bSdrh  LEFT JOIN t4 USING(a)
5899*de75638bSdrh  LEFT JOIN t5 USING(a)
5900*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5901*de75638bSdrh} {
5902*de75638bSdrh   -  -  -  -  -  -
5903*de75638bSdrh  11 11  - 11 11  -
5904*de75638bSdrh  12 12 12 12  -  -
5905*de75638bSdrh  13  - 13 13 13  -
5906*de75638bSdrh  15 15 15 15 15 15
5907*de75638bSdrh  17 17  - 17  - 17
5908*de75638bSdrh  18  - 18 18  - 18
5909*de75638bSdrh}
5910*de75638bSdrhdo_execsql_test joinB-428 {
5911*de75638bSdrh  SELECT a, c, d, e, f, g
5912*de75638bSdrh  FROM t1
5913*de75638bSdrh  FULL JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
5914*de75638bSdrh  LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
5915*de75638bSdrh  WHERE a<=18
5916*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5917*de75638bSdrh} {
5918*de75638bSdrh  11 31  -  - 31  -
5919*de75638bSdrh  12 32 32 32  -  -
5920*de75638bSdrh  13  - 33 33 33  -
5921*de75638bSdrh  15 35 35 35 35 35
5922*de75638bSdrh  17 37  -  -  -  -
5923*de75638bSdrh  18  - 38 38  -  -
5924*de75638bSdrh}
5925*de75638bSdrhdo_execsql_test joinB-429 {
5926*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5927*de75638bSdrh  FROM t1
5928*de75638bSdrh  FULL JOIN t2 USING(a)
5929*de75638bSdrh  LEFT JOIN t3 USING(a)
5930*de75638bSdrh  LEFT JOIN t4 USING(a)
5931*de75638bSdrh  RIGHT JOIN t5 USING(a)
5932*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5933*de75638bSdrh} {
5934*de75638bSdrh  15 15 15 15 15 15
5935*de75638bSdrh  17 17  - 17  - 17
5936*de75638bSdrh  18  - 18 18  - 18
5937*de75638bSdrh  19  -  -  -  - 19
5938*de75638bSdrh}
5939*de75638bSdrhdo_execsql_test joinB-430 {
5940*de75638bSdrh  SELECT a, b, c, d, e, f, g
5941*de75638bSdrh  FROM t1
5942*de75638bSdrh  FULL JOIN t2 USING(a,b)
5943*de75638bSdrh  LEFT JOIN t3 USING(a,b)
5944*de75638bSdrh  LEFT JOIN t4 USING(a,b)
5945*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
5946*de75638bSdrh  WHERE d<>33 OR d IS NULL
5947*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5948*de75638bSdrh} {
5949*de75638bSdrh  15 25 35 35 35 35 35
5950*de75638bSdrh  17 27 37  - 37  - 37
5951*de75638bSdrh  18 28  - 38 38  - 38
5952*de75638bSdrh  19 29  -  -  -  - 39
5953*de75638bSdrh}
5954*de75638bSdrhdo_execsql_test joinB-431 {
5955*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5956*de75638bSdrh  FROM t1
5957*de75638bSdrh  FULL JOIN t2 USING(a)
5958*de75638bSdrh  LEFT JOIN t3 USING(a)
5959*de75638bSdrh  LEFT JOIN t4 USING(a)
5960*de75638bSdrh  FULL JOIN t5 USING(a)
5961*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5962*de75638bSdrh} {
5963*de75638bSdrh   -  -  -  -  -  -
5964*de75638bSdrh  11 11  - 11 11  -
5965*de75638bSdrh  12 12 12 12  -  -
5966*de75638bSdrh  13  - 13 13 13  -
5967*de75638bSdrh  15 15 15 15 15 15
5968*de75638bSdrh  17 17  - 17  - 17
5969*de75638bSdrh  18  - 18 18  - 18
5970*de75638bSdrh  19  -  -  -  - 19
5971*de75638bSdrh}
5972*de75638bSdrhdo_execsql_test joinB-432 {
5973*de75638bSdrh  SELECT b, c, d, e, f, g
5974*de75638bSdrh  FROM t1
5975*de75638bSdrh  NATURAL FULL JOIN t2
5976*de75638bSdrh  NATURAL LEFT JOIN t3
5977*de75638bSdrh  NATURAL LEFT JOIN t4
5978*de75638bSdrh  NATURAL FULL JOIN t5
5979*de75638bSdrh  WHERE b BETWEEN 12 AND 17
5980*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5981*de75638bSdrh} {
5982*de75638bSdrh}
5983*de75638bSdrhdo_execsql_test joinB-433 {
5984*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
5985*de75638bSdrh  FROM t1
5986*de75638bSdrh  FULL JOIN t2 USING(a)
5987*de75638bSdrh  LEFT JOIN t3 USING(a)
5988*de75638bSdrh  RIGHT JOIN t4 USING(a)
5989*de75638bSdrh  INNER JOIN t5 USING(a)
5990*de75638bSdrh  ORDER BY 1 NULLS FIRST;
5991*de75638bSdrh} {
5992*de75638bSdrh  15 15 15 15 15 15
5993*de75638bSdrh  19  -  -  - 19 19
5994*de75638bSdrh}
5995*de75638bSdrhdo_execsql_test joinB-434 {
5996*de75638bSdrh  SELECT a, c, d, e, f, g
5997*de75638bSdrh  FROM t1
5998*de75638bSdrh  FULL JOIN t2 USING(a,b)
5999*de75638bSdrh  LEFT JOIN t3 USING(a,b)
6000*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
6001*de75638bSdrh  INNER JOIN t5 USING(a,b)
6002*de75638bSdrh  WHERE a<>13
6003*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6004*de75638bSdrh} {
6005*de75638bSdrh  15 35 35 35 35 35
6006*de75638bSdrh  19  -  -  - 39 39
6007*de75638bSdrh}
6008*de75638bSdrhdo_execsql_test joinB-435 {
6009*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6010*de75638bSdrh  FROM t1
6011*de75638bSdrh  FULL JOIN t2 USING(a)
6012*de75638bSdrh  LEFT JOIN t3 USING(a)
6013*de75638bSdrh  RIGHT JOIN t4 USING(a)
6014*de75638bSdrh  LEFT JOIN t5 USING(a)
6015*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6016*de75638bSdrh} {
6017*de75638bSdrh  11 11  - 11 11  -
6018*de75638bSdrh  13  - 13 13 13  -
6019*de75638bSdrh  15 15 15 15 15 15
6020*de75638bSdrh  19  -  -  - 19 19
6021*de75638bSdrh}
6022*de75638bSdrhdo_execsql_test joinB-436 {
6023*de75638bSdrh  SELECT a, c, d, e, f, g
6024*de75638bSdrh  FROM t1
6025*de75638bSdrh  FULL JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
6026*de75638bSdrh  RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
6027*de75638bSdrh  WHERE a<=18
6028*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6029*de75638bSdrh} {
6030*de75638bSdrh  11 31  -  - 31  -
6031*de75638bSdrh  13  - 33 33 33  -
6032*de75638bSdrh  15 35 35 35 35 35
6033*de75638bSdrh}
6034*de75638bSdrhdo_execsql_test joinB-437 {
6035*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6036*de75638bSdrh  FROM t1
6037*de75638bSdrh  FULL JOIN t2 USING(a)
6038*de75638bSdrh  LEFT JOIN t3 USING(a)
6039*de75638bSdrh  RIGHT JOIN t4 USING(a)
6040*de75638bSdrh  RIGHT JOIN t5 USING(a)
6041*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6042*de75638bSdrh} {
6043*de75638bSdrh  15 15 15 15 15 15
6044*de75638bSdrh  17  -  -  -  - 17
6045*de75638bSdrh  18  -  -  -  - 18
6046*de75638bSdrh  19  -  -  - 19 19
6047*de75638bSdrh}
6048*de75638bSdrhdo_execsql_test joinB-438 {
6049*de75638bSdrh  SELECT a, b, c, d, e, f, g
6050*de75638bSdrh  FROM t1
6051*de75638bSdrh  FULL JOIN t2 USING(a,b)
6052*de75638bSdrh  LEFT JOIN t3 USING(a,b)
6053*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
6054*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
6055*de75638bSdrh  WHERE d<>33 OR d IS NULL
6056*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6057*de75638bSdrh} {
6058*de75638bSdrh  15 25 35 35 35 35 35
6059*de75638bSdrh  17 27  -  -  -  - 37
6060*de75638bSdrh  18 28  -  -  -  - 38
6061*de75638bSdrh  19 29  -  -  - 39 39
6062*de75638bSdrh}
6063*de75638bSdrhdo_execsql_test joinB-439 {
6064*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6065*de75638bSdrh  FROM t1
6066*de75638bSdrh  FULL JOIN t2 USING(a)
6067*de75638bSdrh  LEFT JOIN t3 USING(a)
6068*de75638bSdrh  RIGHT JOIN t4 USING(a)
6069*de75638bSdrh  FULL JOIN t5 USING(a)
6070*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6071*de75638bSdrh} {
6072*de75638bSdrh  11 11  - 11 11  -
6073*de75638bSdrh  13  - 13 13 13  -
6074*de75638bSdrh  15 15 15 15 15 15
6075*de75638bSdrh  17  -  -  -  - 17
6076*de75638bSdrh  18  -  -  -  - 18
6077*de75638bSdrh  19  -  -  - 19 19
6078*de75638bSdrh}
6079*de75638bSdrhdo_execsql_test joinB-440 {
6080*de75638bSdrh  SELECT b, c, d, e, f, g
6081*de75638bSdrh  FROM t1
6082*de75638bSdrh  NATURAL FULL JOIN t2
6083*de75638bSdrh  NATURAL LEFT JOIN t3
6084*de75638bSdrh  NATURAL RIGHT JOIN t4
6085*de75638bSdrh  NATURAL FULL JOIN t5
6086*de75638bSdrh  WHERE b BETWEEN 12 AND 17
6087*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6088*de75638bSdrh} {
6089*de75638bSdrh}
6090*de75638bSdrhdo_execsql_test joinB-441 {
6091*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6092*de75638bSdrh  FROM t1
6093*de75638bSdrh  FULL JOIN t2 USING(a)
6094*de75638bSdrh  LEFT JOIN t3 USING(a)
6095*de75638bSdrh  FULL JOIN t4 USING(a)
6096*de75638bSdrh  INNER JOIN t5 USING(a)
6097*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6098*de75638bSdrh} {
6099*de75638bSdrh  15 15 15 15 15 15
6100*de75638bSdrh  17 17  - 17  - 17
6101*de75638bSdrh  18  - 18 18  - 18
6102*de75638bSdrh  19  -  -  - 19 19
6103*de75638bSdrh}
6104*de75638bSdrhdo_execsql_test joinB-442 {
6105*de75638bSdrh  SELECT a, c, d, e, f, g
6106*de75638bSdrh  FROM t1
6107*de75638bSdrh  FULL JOIN t2 USING(a,b)
6108*de75638bSdrh  LEFT JOIN t3 USING(a,b)
6109*de75638bSdrh  FULL JOIN t4 USING(a,b)
6110*de75638bSdrh  INNER JOIN t5 USING(a,b)
6111*de75638bSdrh  WHERE a<>13
6112*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6113*de75638bSdrh} {
6114*de75638bSdrh  15 35 35 35 35 35
6115*de75638bSdrh  17 37  - 37  - 37
6116*de75638bSdrh  18  - 38 38  - 38
6117*de75638bSdrh  19  -  -  - 39 39
6118*de75638bSdrh}
6119*de75638bSdrhdo_execsql_test joinB-443 {
6120*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6121*de75638bSdrh  FROM t1
6122*de75638bSdrh  FULL JOIN t2 USING(a)
6123*de75638bSdrh  LEFT JOIN t3 USING(a)
6124*de75638bSdrh  FULL JOIN t4 USING(a)
6125*de75638bSdrh  LEFT JOIN t5 USING(a)
6126*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6127*de75638bSdrh} {
6128*de75638bSdrh   -  -  -  -  -  -
6129*de75638bSdrh  11 11  - 11 11  -
6130*de75638bSdrh  12 12 12 12  -  -
6131*de75638bSdrh  13  - 13 13 13  -
6132*de75638bSdrh  15 15 15 15 15 15
6133*de75638bSdrh  17 17  - 17  - 17
6134*de75638bSdrh  18  - 18 18  - 18
6135*de75638bSdrh  19  -  -  - 19 19
6136*de75638bSdrh}
6137*de75638bSdrhdo_execsql_test joinB-444 {
6138*de75638bSdrh  SELECT a, c, d, e, f, g
6139*de75638bSdrh  FROM t1
6140*de75638bSdrh  FULL JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
6141*de75638bSdrh  FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
6142*de75638bSdrh  WHERE a<=18
6143*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6144*de75638bSdrh} {
6145*de75638bSdrh  11 31  -  - 31  -
6146*de75638bSdrh  12 32 32 32  -  -
6147*de75638bSdrh  13  - 33 33 33  -
6148*de75638bSdrh  15 35 35 35 35 35
6149*de75638bSdrh  17 37  -  -  -  -
6150*de75638bSdrh  18  - 38 38  -  -
6151*de75638bSdrh}
6152*de75638bSdrhdo_execsql_test joinB-445 {
6153*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6154*de75638bSdrh  FROM t1
6155*de75638bSdrh  FULL JOIN t2 USING(a)
6156*de75638bSdrh  LEFT JOIN t3 USING(a)
6157*de75638bSdrh  FULL JOIN t4 USING(a)
6158*de75638bSdrh  RIGHT JOIN t5 USING(a)
6159*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6160*de75638bSdrh} {
6161*de75638bSdrh  15 15 15 15 15 15
6162*de75638bSdrh  17 17  - 17  - 17
6163*de75638bSdrh  18  - 18 18  - 18
6164*de75638bSdrh  19  -  -  - 19 19
6165*de75638bSdrh}
6166*de75638bSdrhdo_execsql_test joinB-446 {
6167*de75638bSdrh  SELECT a, b, c, d, e, f, g
6168*de75638bSdrh  FROM t1
6169*de75638bSdrh  FULL JOIN t2 USING(a,b)
6170*de75638bSdrh  LEFT JOIN t3 USING(a,b)
6171*de75638bSdrh  FULL JOIN t4 USING(a,b)
6172*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
6173*de75638bSdrh  WHERE d<>33 OR d IS NULL
6174*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6175*de75638bSdrh} {
6176*de75638bSdrh  15 25 35 35 35 35 35
6177*de75638bSdrh  17 27 37  - 37  - 37
6178*de75638bSdrh  18 28  - 38 38  - 38
6179*de75638bSdrh  19 29  -  -  - 39 39
6180*de75638bSdrh}
6181*de75638bSdrhdo_execsql_test joinB-447 {
6182*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6183*de75638bSdrh  FROM t1
6184*de75638bSdrh  FULL JOIN t2 USING(a)
6185*de75638bSdrh  LEFT JOIN t3 USING(a)
6186*de75638bSdrh  FULL JOIN t4 USING(a)
6187*de75638bSdrh  FULL JOIN t5 USING(a)
6188*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6189*de75638bSdrh} {
6190*de75638bSdrh   -  -  -  -  -  -
6191*de75638bSdrh  11 11  - 11 11  -
6192*de75638bSdrh  12 12 12 12  -  -
6193*de75638bSdrh  13  - 13 13 13  -
6194*de75638bSdrh  15 15 15 15 15 15
6195*de75638bSdrh  17 17  - 17  - 17
6196*de75638bSdrh  18  - 18 18  - 18
6197*de75638bSdrh  19  -  -  - 19 19
6198*de75638bSdrh}
6199*de75638bSdrhdo_execsql_test joinB-448 {
6200*de75638bSdrh  SELECT b, c, d, e, f, g
6201*de75638bSdrh  FROM t1
6202*de75638bSdrh  NATURAL FULL JOIN t2
6203*de75638bSdrh  NATURAL LEFT JOIN t3
6204*de75638bSdrh  NATURAL FULL JOIN t4
6205*de75638bSdrh  NATURAL FULL JOIN t5
6206*de75638bSdrh  WHERE b BETWEEN 12 AND 17
6207*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6208*de75638bSdrh} {
6209*de75638bSdrh}
6210*de75638bSdrhdo_execsql_test joinB-449 {
6211*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6212*de75638bSdrh  FROM t1
6213*de75638bSdrh  FULL JOIN t2 USING(a)
6214*de75638bSdrh  RIGHT JOIN t3 USING(a)
6215*de75638bSdrh  INNER JOIN t4 USING(a)
6216*de75638bSdrh  INNER JOIN t5 USING(a)
6217*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6218*de75638bSdrh} {
6219*de75638bSdrh  15 15 15 15 15 15
6220*de75638bSdrh  19  -  - 19 19 19
6221*de75638bSdrh}
6222*de75638bSdrhdo_execsql_test joinB-450 {
6223*de75638bSdrh  SELECT a, c, d, e, f, g
6224*de75638bSdrh  FROM t1
6225*de75638bSdrh  FULL JOIN t2 USING(a,b)
6226*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
6227*de75638bSdrh  INNER JOIN t4 USING(a,b)
6228*de75638bSdrh  INNER JOIN t5 USING(a,b)
6229*de75638bSdrh  WHERE a<>13
6230*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6231*de75638bSdrh} {
6232*de75638bSdrh  15 35 35 35 35 35
6233*de75638bSdrh  19  -  - 39 39 39
6234*de75638bSdrh}
6235*de75638bSdrhdo_execsql_test joinB-451 {
6236*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6237*de75638bSdrh  FROM t1
6238*de75638bSdrh  FULL JOIN t2 USING(a)
6239*de75638bSdrh  RIGHT JOIN t3 USING(a)
6240*de75638bSdrh  INNER JOIN t4 USING(a)
6241*de75638bSdrh  LEFT JOIN t5 USING(a)
6242*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6243*de75638bSdrh} {
6244*de75638bSdrh  11 11  - 11 11  -
6245*de75638bSdrh  13  - 13 13 13  -
6246*de75638bSdrh  15 15 15 15 15 15
6247*de75638bSdrh  19  -  - 19 19 19
6248*de75638bSdrh}
6249*de75638bSdrhdo_execsql_test joinB-452 {
6250*de75638bSdrh  SELECT a, c, d, e, f, g
6251*de75638bSdrh  FROM t1
6252*de75638bSdrh  FULL JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
6253*de75638bSdrh  INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
6254*de75638bSdrh  WHERE a<=18
6255*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6256*de75638bSdrh} {
6257*de75638bSdrh  11 31  - 31 31  -
6258*de75638bSdrh  13  - 33 33 33  -
6259*de75638bSdrh  15 35 35 35 35 35
6260*de75638bSdrh}
6261*de75638bSdrhdo_execsql_test joinB-453 {
6262*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6263*de75638bSdrh  FROM t1
6264*de75638bSdrh  FULL JOIN t2 USING(a)
6265*de75638bSdrh  RIGHT JOIN t3 USING(a)
6266*de75638bSdrh  INNER JOIN t4 USING(a)
6267*de75638bSdrh  RIGHT JOIN t5 USING(a)
6268*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6269*de75638bSdrh} {
6270*de75638bSdrh  15 15 15 15 15 15
6271*de75638bSdrh  17  -  -  -  - 17
6272*de75638bSdrh  18  -  -  -  - 18
6273*de75638bSdrh  19  -  - 19 19 19
6274*de75638bSdrh}
6275*de75638bSdrhdo_execsql_test joinB-454 {
6276*de75638bSdrh  SELECT a, b, c, d, e, f, g
6277*de75638bSdrh  FROM t1
6278*de75638bSdrh  FULL JOIN t2 USING(a,b)
6279*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
6280*de75638bSdrh  INNER JOIN t4 USING(a,b)
6281*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
6282*de75638bSdrh  WHERE d<>33 OR d IS NULL
6283*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6284*de75638bSdrh} {
6285*de75638bSdrh  15 25 35 35 35 35 35
6286*de75638bSdrh  17 27  -  -  -  - 37
6287*de75638bSdrh  18 28  -  -  -  - 38
6288*de75638bSdrh  19 29  -  - 39 39 39
6289*de75638bSdrh}
6290*de75638bSdrhdo_execsql_test joinB-455 {
6291*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6292*de75638bSdrh  FROM t1
6293*de75638bSdrh  FULL JOIN t2 USING(a)
6294*de75638bSdrh  RIGHT JOIN t3 USING(a)
6295*de75638bSdrh  INNER JOIN t4 USING(a)
6296*de75638bSdrh  FULL JOIN t5 USING(a)
6297*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6298*de75638bSdrh} {
6299*de75638bSdrh  11 11  - 11 11  -
6300*de75638bSdrh  13  - 13 13 13  -
6301*de75638bSdrh  15 15 15 15 15 15
6302*de75638bSdrh  17  -  -  -  - 17
6303*de75638bSdrh  18  -  -  -  - 18
6304*de75638bSdrh  19  -  - 19 19 19
6305*de75638bSdrh}
6306*de75638bSdrhdo_execsql_test joinB-456 {
6307*de75638bSdrh  SELECT b, c, d, e, f, g
6308*de75638bSdrh  FROM t1
6309*de75638bSdrh  NATURAL FULL JOIN t2
6310*de75638bSdrh  NATURAL RIGHT JOIN t3
6311*de75638bSdrh  NATURAL INNER JOIN t4
6312*de75638bSdrh  NATURAL FULL JOIN t5
6313*de75638bSdrh  WHERE b BETWEEN 12 AND 17
6314*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6315*de75638bSdrh} {
6316*de75638bSdrh}
6317*de75638bSdrhdo_execsql_test joinB-457 {
6318*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6319*de75638bSdrh  FROM t1
6320*de75638bSdrh  FULL JOIN t2 USING(a)
6321*de75638bSdrh  RIGHT JOIN t3 USING(a)
6322*de75638bSdrh  LEFT JOIN t4 USING(a)
6323*de75638bSdrh  INNER JOIN t5 USING(a)
6324*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6325*de75638bSdrh} {
6326*de75638bSdrh  15 15 15 15 15 15
6327*de75638bSdrh  17 17  - 17  - 17
6328*de75638bSdrh  18  - 18 18  - 18
6329*de75638bSdrh  19  -  - 19 19 19
6330*de75638bSdrh}
6331*de75638bSdrhdo_execsql_test joinB-458 {
6332*de75638bSdrh  SELECT a, c, d, e, f, g
6333*de75638bSdrh  FROM t1
6334*de75638bSdrh  FULL JOIN t2 USING(a,b)
6335*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
6336*de75638bSdrh  LEFT JOIN t4 USING(a,b)
6337*de75638bSdrh  INNER JOIN t5 USING(a,b)
6338*de75638bSdrh  WHERE a<>13
6339*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6340*de75638bSdrh} {
6341*de75638bSdrh  15 35 35 35 35 35
6342*de75638bSdrh  17 37  - 37  - 37
6343*de75638bSdrh  18  - 38 38  - 38
6344*de75638bSdrh  19  -  - 39 39 39
6345*de75638bSdrh}
6346*de75638bSdrhdo_execsql_test joinB-459 {
6347*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6348*de75638bSdrh  FROM t1
6349*de75638bSdrh  FULL JOIN t2 USING(a)
6350*de75638bSdrh  RIGHT JOIN t3 USING(a)
6351*de75638bSdrh  LEFT JOIN t4 USING(a)
6352*de75638bSdrh  LEFT JOIN t5 USING(a)
6353*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6354*de75638bSdrh} {
6355*de75638bSdrh   -  -  -  -  -  -
6356*de75638bSdrh  11 11  - 11 11  -
6357*de75638bSdrh  12 12 12 12  -  -
6358*de75638bSdrh  13  - 13 13 13  -
6359*de75638bSdrh  15 15 15 15 15 15
6360*de75638bSdrh  17 17  - 17  - 17
6361*de75638bSdrh  18  - 18 18  - 18
6362*de75638bSdrh  19  -  - 19 19 19
6363*de75638bSdrh}
6364*de75638bSdrhdo_execsql_test joinB-460 {
6365*de75638bSdrh  SELECT a, c, d, e, f, g
6366*de75638bSdrh  FROM t1
6367*de75638bSdrh  FULL JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
6368*de75638bSdrh  LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
6369*de75638bSdrh  WHERE a<=18
6370*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6371*de75638bSdrh} {
6372*de75638bSdrh  11 31  - 31 31  -
6373*de75638bSdrh  12 32 32 32  -  -
6374*de75638bSdrh  13  - 33 33 33  -
6375*de75638bSdrh  15 35 35 35 35 35
6376*de75638bSdrh  17 37  - 37  -  -
6377*de75638bSdrh  18  - 38 38  -  -
6378*de75638bSdrh}
6379*de75638bSdrhdo_execsql_test joinB-461 {
6380*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6381*de75638bSdrh  FROM t1
6382*de75638bSdrh  FULL JOIN t2 USING(a)
6383*de75638bSdrh  RIGHT JOIN t3 USING(a)
6384*de75638bSdrh  LEFT JOIN t4 USING(a)
6385*de75638bSdrh  RIGHT JOIN t5 USING(a)
6386*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6387*de75638bSdrh} {
6388*de75638bSdrh  15 15 15 15 15 15
6389*de75638bSdrh  17 17  - 17  - 17
6390*de75638bSdrh  18  - 18 18  - 18
6391*de75638bSdrh  19  -  - 19 19 19
6392*de75638bSdrh}
6393*de75638bSdrhdo_execsql_test joinB-462 {
6394*de75638bSdrh  SELECT a, b, c, d, e, f, g
6395*de75638bSdrh  FROM t1
6396*de75638bSdrh  FULL JOIN t2 USING(a,b)
6397*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
6398*de75638bSdrh  LEFT JOIN t4 USING(a,b)
6399*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
6400*de75638bSdrh  WHERE d<>33 OR d IS NULL
6401*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6402*de75638bSdrh} {
6403*de75638bSdrh  15 25 35 35 35 35 35
6404*de75638bSdrh  17 27 37  - 37  - 37
6405*de75638bSdrh  18 28  - 38 38  - 38
6406*de75638bSdrh  19 29  -  - 39 39 39
6407*de75638bSdrh}
6408*de75638bSdrhdo_execsql_test joinB-463 {
6409*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6410*de75638bSdrh  FROM t1
6411*de75638bSdrh  FULL JOIN t2 USING(a)
6412*de75638bSdrh  RIGHT JOIN t3 USING(a)
6413*de75638bSdrh  LEFT JOIN t4 USING(a)
6414*de75638bSdrh  FULL JOIN t5 USING(a)
6415*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6416*de75638bSdrh} {
6417*de75638bSdrh   -  -  -  -  -  -
6418*de75638bSdrh  11 11  - 11 11  -
6419*de75638bSdrh  12 12 12 12  -  -
6420*de75638bSdrh  13  - 13 13 13  -
6421*de75638bSdrh  15 15 15 15 15 15
6422*de75638bSdrh  17 17  - 17  - 17
6423*de75638bSdrh  18  - 18 18  - 18
6424*de75638bSdrh  19  -  - 19 19 19
6425*de75638bSdrh}
6426*de75638bSdrhdo_execsql_test joinB-464 {
6427*de75638bSdrh  SELECT b, c, d, e, f, g
6428*de75638bSdrh  FROM t1
6429*de75638bSdrh  NATURAL FULL JOIN t2
6430*de75638bSdrh  NATURAL RIGHT JOIN t3
6431*de75638bSdrh  NATURAL LEFT JOIN t4
6432*de75638bSdrh  NATURAL FULL JOIN t5
6433*de75638bSdrh  WHERE b BETWEEN 12 AND 17
6434*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6435*de75638bSdrh} {
6436*de75638bSdrh}
6437*de75638bSdrhdo_execsql_test joinB-465 {
6438*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6439*de75638bSdrh  FROM t1
6440*de75638bSdrh  FULL JOIN t2 USING(a)
6441*de75638bSdrh  RIGHT JOIN t3 USING(a)
6442*de75638bSdrh  RIGHT JOIN t4 USING(a)
6443*de75638bSdrh  INNER JOIN t5 USING(a)
6444*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6445*de75638bSdrh} {
6446*de75638bSdrh  15 15 15 15 15 15
6447*de75638bSdrh  19  -  - 19 19 19
6448*de75638bSdrh}
6449*de75638bSdrhdo_execsql_test joinB-466 {
6450*de75638bSdrh  SELECT a, c, d, e, f, g
6451*de75638bSdrh  FROM t1
6452*de75638bSdrh  FULL JOIN t2 USING(a,b)
6453*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
6454*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
6455*de75638bSdrh  INNER JOIN t5 USING(a,b)
6456*de75638bSdrh  WHERE a<>13
6457*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6458*de75638bSdrh} {
6459*de75638bSdrh  15 35 35 35 35 35
6460*de75638bSdrh  19  -  - 39 39 39
6461*de75638bSdrh}
6462*de75638bSdrhdo_execsql_test joinB-467 {
6463*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6464*de75638bSdrh  FROM t1
6465*de75638bSdrh  FULL JOIN t2 USING(a)
6466*de75638bSdrh  RIGHT JOIN t3 USING(a)
6467*de75638bSdrh  RIGHT JOIN t4 USING(a)
6468*de75638bSdrh  LEFT JOIN t5 USING(a)
6469*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6470*de75638bSdrh} {
6471*de75638bSdrh  11 11  - 11 11  -
6472*de75638bSdrh  13  - 13 13 13  -
6473*de75638bSdrh  15 15 15 15 15 15
6474*de75638bSdrh  19  -  - 19 19 19
6475*de75638bSdrh}
6476*de75638bSdrhdo_execsql_test joinB-468 {
6477*de75638bSdrh  SELECT a, c, d, e, f, g
6478*de75638bSdrh  FROM t1
6479*de75638bSdrh  FULL JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
6480*de75638bSdrh  RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
6481*de75638bSdrh  WHERE a<=18
6482*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6483*de75638bSdrh} {
6484*de75638bSdrh  11 31  - 31 31  -
6485*de75638bSdrh  13  - 33 33 33  -
6486*de75638bSdrh  15 35 35 35 35 35
6487*de75638bSdrh}
6488*de75638bSdrhdo_execsql_test joinB-469 {
6489*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6490*de75638bSdrh  FROM t1
6491*de75638bSdrh  FULL JOIN t2 USING(a)
6492*de75638bSdrh  RIGHT JOIN t3 USING(a)
6493*de75638bSdrh  RIGHT JOIN t4 USING(a)
6494*de75638bSdrh  RIGHT JOIN t5 USING(a)
6495*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6496*de75638bSdrh} {
6497*de75638bSdrh  15 15 15 15 15 15
6498*de75638bSdrh  17  -  -  -  - 17
6499*de75638bSdrh  18  -  -  -  - 18
6500*de75638bSdrh  19  -  - 19 19 19
6501*de75638bSdrh}
6502*de75638bSdrhdo_execsql_test joinB-470 {
6503*de75638bSdrh  SELECT a, b, c, d, e, f, g
6504*de75638bSdrh  FROM t1
6505*de75638bSdrh  FULL JOIN t2 USING(a,b)
6506*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
6507*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
6508*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
6509*de75638bSdrh  WHERE d<>33 OR d IS NULL
6510*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6511*de75638bSdrh} {
6512*de75638bSdrh  15 25 35 35 35 35 35
6513*de75638bSdrh  17 27  -  -  -  - 37
6514*de75638bSdrh  18 28  -  -  -  - 38
6515*de75638bSdrh  19 29  -  - 39 39 39
6516*de75638bSdrh}
6517*de75638bSdrhdo_execsql_test joinB-471 {
6518*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6519*de75638bSdrh  FROM t1
6520*de75638bSdrh  FULL JOIN t2 USING(a)
6521*de75638bSdrh  RIGHT JOIN t3 USING(a)
6522*de75638bSdrh  RIGHT JOIN t4 USING(a)
6523*de75638bSdrh  FULL JOIN t5 USING(a)
6524*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6525*de75638bSdrh} {
6526*de75638bSdrh  11 11  - 11 11  -
6527*de75638bSdrh  13  - 13 13 13  -
6528*de75638bSdrh  15 15 15 15 15 15
6529*de75638bSdrh  17  -  -  -  - 17
6530*de75638bSdrh  18  -  -  -  - 18
6531*de75638bSdrh  19  -  - 19 19 19
6532*de75638bSdrh}
6533*de75638bSdrhdo_execsql_test joinB-472 {
6534*de75638bSdrh  SELECT b, c, d, e, f, g
6535*de75638bSdrh  FROM t1
6536*de75638bSdrh  NATURAL FULL JOIN t2
6537*de75638bSdrh  NATURAL RIGHT JOIN t3
6538*de75638bSdrh  NATURAL RIGHT JOIN t4
6539*de75638bSdrh  NATURAL FULL JOIN t5
6540*de75638bSdrh  WHERE b BETWEEN 12 AND 17
6541*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6542*de75638bSdrh} {
6543*de75638bSdrh}
6544*de75638bSdrhdo_execsql_test joinB-473 {
6545*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6546*de75638bSdrh  FROM t1
6547*de75638bSdrh  FULL JOIN t2 USING(a)
6548*de75638bSdrh  RIGHT JOIN t3 USING(a)
6549*de75638bSdrh  FULL JOIN t4 USING(a)
6550*de75638bSdrh  INNER JOIN t5 USING(a)
6551*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6552*de75638bSdrh} {
6553*de75638bSdrh  15 15 15 15 15 15
6554*de75638bSdrh  17 17  - 17  - 17
6555*de75638bSdrh  18  - 18 18  - 18
6556*de75638bSdrh  19  -  - 19 19 19
6557*de75638bSdrh}
6558*de75638bSdrhdo_execsql_test joinB-474 {
6559*de75638bSdrh  SELECT a, c, d, e, f, g
6560*de75638bSdrh  FROM t1
6561*de75638bSdrh  FULL JOIN t2 USING(a,b)
6562*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
6563*de75638bSdrh  FULL JOIN t4 USING(a,b)
6564*de75638bSdrh  INNER JOIN t5 USING(a,b)
6565*de75638bSdrh  WHERE a<>13
6566*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6567*de75638bSdrh} {
6568*de75638bSdrh  15 35 35 35 35 35
6569*de75638bSdrh  17 37  - 37  - 37
6570*de75638bSdrh  18  - 38 38  - 38
6571*de75638bSdrh  19  -  - 39 39 39
6572*de75638bSdrh}
6573*de75638bSdrhdo_execsql_test joinB-475 {
6574*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6575*de75638bSdrh  FROM t1
6576*de75638bSdrh  FULL JOIN t2 USING(a)
6577*de75638bSdrh  RIGHT JOIN t3 USING(a)
6578*de75638bSdrh  FULL JOIN t4 USING(a)
6579*de75638bSdrh  LEFT JOIN t5 USING(a)
6580*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6581*de75638bSdrh} {
6582*de75638bSdrh   -  -  -  -  -  -
6583*de75638bSdrh  11 11  - 11 11  -
6584*de75638bSdrh  12 12 12 12  -  -
6585*de75638bSdrh  13  - 13 13 13  -
6586*de75638bSdrh  15 15 15 15 15 15
6587*de75638bSdrh  17 17  - 17  - 17
6588*de75638bSdrh  18  - 18 18  - 18
6589*de75638bSdrh  19  -  - 19 19 19
6590*de75638bSdrh}
6591*de75638bSdrhdo_execsql_test joinB-476 {
6592*de75638bSdrh  SELECT a, c, d, e, f, g
6593*de75638bSdrh  FROM t1
6594*de75638bSdrh  FULL JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
6595*de75638bSdrh  FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
6596*de75638bSdrh  WHERE a<=18
6597*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6598*de75638bSdrh} {
6599*de75638bSdrh  11 31  - 31 31  -
6600*de75638bSdrh  12 32 32 32  -  -
6601*de75638bSdrh  13  - 33 33 33  -
6602*de75638bSdrh  15 35 35 35 35 35
6603*de75638bSdrh  17 37  - 37  -  -
6604*de75638bSdrh  18  - 38 38  -  -
6605*de75638bSdrh}
6606*de75638bSdrhdo_execsql_test joinB-477 {
6607*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6608*de75638bSdrh  FROM t1
6609*de75638bSdrh  FULL JOIN t2 USING(a)
6610*de75638bSdrh  RIGHT JOIN t3 USING(a)
6611*de75638bSdrh  FULL JOIN t4 USING(a)
6612*de75638bSdrh  RIGHT JOIN t5 USING(a)
6613*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6614*de75638bSdrh} {
6615*de75638bSdrh  15 15 15 15 15 15
6616*de75638bSdrh  17 17  - 17  - 17
6617*de75638bSdrh  18  - 18 18  - 18
6618*de75638bSdrh  19  -  - 19 19 19
6619*de75638bSdrh}
6620*de75638bSdrhdo_execsql_test joinB-478 {
6621*de75638bSdrh  SELECT a, b, c, d, e, f, g
6622*de75638bSdrh  FROM t1
6623*de75638bSdrh  FULL JOIN t2 USING(a,b)
6624*de75638bSdrh  RIGHT JOIN t3 USING(a,b)
6625*de75638bSdrh  FULL JOIN t4 USING(a,b)
6626*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
6627*de75638bSdrh  WHERE d<>33 OR d IS NULL
6628*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6629*de75638bSdrh} {
6630*de75638bSdrh  15 25 35 35 35 35 35
6631*de75638bSdrh  17 27 37  - 37  - 37
6632*de75638bSdrh  18 28  - 38 38  - 38
6633*de75638bSdrh  19 29  -  - 39 39 39
6634*de75638bSdrh}
6635*de75638bSdrhdo_execsql_test joinB-479 {
6636*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6637*de75638bSdrh  FROM t1
6638*de75638bSdrh  FULL JOIN t2 USING(a)
6639*de75638bSdrh  RIGHT JOIN t3 USING(a)
6640*de75638bSdrh  FULL JOIN t4 USING(a)
6641*de75638bSdrh  FULL JOIN t5 USING(a)
6642*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6643*de75638bSdrh} {
6644*de75638bSdrh   -  -  -  -  -  -
6645*de75638bSdrh  11 11  - 11 11  -
6646*de75638bSdrh  12 12 12 12  -  -
6647*de75638bSdrh  13  - 13 13 13  -
6648*de75638bSdrh  15 15 15 15 15 15
6649*de75638bSdrh  17 17  - 17  - 17
6650*de75638bSdrh  18  - 18 18  - 18
6651*de75638bSdrh  19  -  - 19 19 19
6652*de75638bSdrh}
6653*de75638bSdrhdo_execsql_test joinB-480 {
6654*de75638bSdrh  SELECT b, c, d, e, f, g
6655*de75638bSdrh  FROM t1
6656*de75638bSdrh  NATURAL FULL JOIN t2
6657*de75638bSdrh  NATURAL RIGHT JOIN t3
6658*de75638bSdrh  NATURAL FULL JOIN t4
6659*de75638bSdrh  NATURAL FULL JOIN t5
6660*de75638bSdrh  WHERE b BETWEEN 12 AND 17
6661*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6662*de75638bSdrh} {
6663*de75638bSdrh}
6664*de75638bSdrhdo_execsql_test joinB-481 {
6665*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6666*de75638bSdrh  FROM t1
6667*de75638bSdrh  FULL JOIN t2 USING(a)
6668*de75638bSdrh  FULL JOIN t3 USING(a)
6669*de75638bSdrh  INNER JOIN t4 USING(a)
6670*de75638bSdrh  INNER JOIN t5 USING(a)
6671*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6672*de75638bSdrh} {
6673*de75638bSdrh  15 15 15 15 15 15
6674*de75638bSdrh  19  -  - 19 19 19
6675*de75638bSdrh}
6676*de75638bSdrhdo_execsql_test joinB-482 {
6677*de75638bSdrh  SELECT a, c, d, e, f, g
6678*de75638bSdrh  FROM t1
6679*de75638bSdrh  FULL JOIN t2 USING(a,b)
6680*de75638bSdrh  FULL JOIN t3 USING(a,b)
6681*de75638bSdrh  INNER JOIN t4 USING(a,b)
6682*de75638bSdrh  INNER JOIN t5 USING(a,b)
6683*de75638bSdrh  WHERE a<>13
6684*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6685*de75638bSdrh} {
6686*de75638bSdrh  15 35 35 35 35 35
6687*de75638bSdrh  19  -  - 39 39 39
6688*de75638bSdrh}
6689*de75638bSdrhdo_execsql_test joinB-483 {
6690*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6691*de75638bSdrh  FROM t1
6692*de75638bSdrh  FULL JOIN t2 USING(a)
6693*de75638bSdrh  FULL JOIN t3 USING(a)
6694*de75638bSdrh  INNER JOIN t4 USING(a)
6695*de75638bSdrh  LEFT JOIN t5 USING(a)
6696*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6697*de75638bSdrh} {
6698*de75638bSdrh  11 11  - 11 11  -
6699*de75638bSdrh  13  - 13 13 13  -
6700*de75638bSdrh  15 15 15 15 15 15
6701*de75638bSdrh  19  -  - 19 19 19
6702*de75638bSdrh}
6703*de75638bSdrhdo_execsql_test joinB-484 {
6704*de75638bSdrh  SELECT a, c, d, e, f, g
6705*de75638bSdrh  FROM t1
6706*de75638bSdrh  FULL JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
6707*de75638bSdrh  INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
6708*de75638bSdrh  WHERE a<=18
6709*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6710*de75638bSdrh} {
6711*de75638bSdrh  11 31  - 31 31  -
6712*de75638bSdrh  13  - 33 33 33  -
6713*de75638bSdrh  15 35 35 35 35 35
6714*de75638bSdrh}
6715*de75638bSdrhdo_execsql_test joinB-485 {
6716*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6717*de75638bSdrh  FROM t1
6718*de75638bSdrh  FULL JOIN t2 USING(a)
6719*de75638bSdrh  FULL JOIN t3 USING(a)
6720*de75638bSdrh  INNER JOIN t4 USING(a)
6721*de75638bSdrh  RIGHT JOIN t5 USING(a)
6722*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6723*de75638bSdrh} {
6724*de75638bSdrh  15 15 15 15 15 15
6725*de75638bSdrh  17  -  -  -  - 17
6726*de75638bSdrh  18  -  -  -  - 18
6727*de75638bSdrh  19  -  - 19 19 19
6728*de75638bSdrh}
6729*de75638bSdrhdo_execsql_test joinB-486 {
6730*de75638bSdrh  SELECT a, b, c, d, e, f, g
6731*de75638bSdrh  FROM t1
6732*de75638bSdrh  FULL JOIN t2 USING(a,b)
6733*de75638bSdrh  FULL JOIN t3 USING(a,b)
6734*de75638bSdrh  INNER JOIN t4 USING(a,b)
6735*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
6736*de75638bSdrh  WHERE d<>33 OR d IS NULL
6737*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6738*de75638bSdrh} {
6739*de75638bSdrh  15 25 35 35 35 35 35
6740*de75638bSdrh  17 27  -  -  -  - 37
6741*de75638bSdrh  18 28  -  -  -  - 38
6742*de75638bSdrh  19 29  -  - 39 39 39
6743*de75638bSdrh}
6744*de75638bSdrhdo_execsql_test joinB-487 {
6745*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6746*de75638bSdrh  FROM t1
6747*de75638bSdrh  FULL JOIN t2 USING(a)
6748*de75638bSdrh  FULL JOIN t3 USING(a)
6749*de75638bSdrh  INNER JOIN t4 USING(a)
6750*de75638bSdrh  FULL JOIN t5 USING(a)
6751*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6752*de75638bSdrh} {
6753*de75638bSdrh  11 11  - 11 11  -
6754*de75638bSdrh  13  - 13 13 13  -
6755*de75638bSdrh  15 15 15 15 15 15
6756*de75638bSdrh  17  -  -  -  - 17
6757*de75638bSdrh  18  -  -  -  - 18
6758*de75638bSdrh  19  -  - 19 19 19
6759*de75638bSdrh}
6760*de75638bSdrhdo_execsql_test joinB-488 {
6761*de75638bSdrh  SELECT b, c, d, e, f, g
6762*de75638bSdrh  FROM t1
6763*de75638bSdrh  NATURAL FULL JOIN t2
6764*de75638bSdrh  NATURAL FULL JOIN t3
6765*de75638bSdrh  NATURAL INNER JOIN t4
6766*de75638bSdrh  NATURAL FULL JOIN t5
6767*de75638bSdrh  WHERE b BETWEEN 12 AND 17
6768*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6769*de75638bSdrh} {
6770*de75638bSdrh}
6771*de75638bSdrhdo_execsql_test joinB-489 {
6772*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6773*de75638bSdrh  FROM t1
6774*de75638bSdrh  FULL JOIN t2 USING(a)
6775*de75638bSdrh  FULL JOIN t3 USING(a)
6776*de75638bSdrh  LEFT JOIN t4 USING(a)
6777*de75638bSdrh  INNER JOIN t5 USING(a)
6778*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6779*de75638bSdrh} {
6780*de75638bSdrh  15 15 15 15 15 15
6781*de75638bSdrh  17 17  - 17  - 17
6782*de75638bSdrh  18  - 18 18  - 18
6783*de75638bSdrh  19  -  - 19 19 19
6784*de75638bSdrh}
6785*de75638bSdrhdo_execsql_test joinB-490 {
6786*de75638bSdrh  SELECT a, c, d, e, f, g
6787*de75638bSdrh  FROM t1
6788*de75638bSdrh  FULL JOIN t2 USING(a,b)
6789*de75638bSdrh  FULL JOIN t3 USING(a,b)
6790*de75638bSdrh  LEFT JOIN t4 USING(a,b)
6791*de75638bSdrh  INNER JOIN t5 USING(a,b)
6792*de75638bSdrh  WHERE a<>13
6793*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6794*de75638bSdrh} {
6795*de75638bSdrh  15 35 35 35 35 35
6796*de75638bSdrh  17 37  - 37  - 37
6797*de75638bSdrh  18  - 38 38  - 38
6798*de75638bSdrh  19  -  - 39 39 39
6799*de75638bSdrh}
6800*de75638bSdrhdo_execsql_test joinB-491 {
6801*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6802*de75638bSdrh  FROM t1
6803*de75638bSdrh  FULL JOIN t2 USING(a)
6804*de75638bSdrh  FULL JOIN t3 USING(a)
6805*de75638bSdrh  LEFT JOIN t4 USING(a)
6806*de75638bSdrh  LEFT JOIN t5 USING(a)
6807*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6808*de75638bSdrh} {
6809*de75638bSdrh   -  -  -  -  -  -
6810*de75638bSdrh   -  -  -  -  -  -
6811*de75638bSdrh  11 11  - 11 11  -
6812*de75638bSdrh  12 12 12 12  -  -
6813*de75638bSdrh  13  - 13 13 13  -
6814*de75638bSdrh  15 15 15 15 15 15
6815*de75638bSdrh  17 17  - 17  - 17
6816*de75638bSdrh  18  - 18 18  - 18
6817*de75638bSdrh  19  -  - 19 19 19
6818*de75638bSdrh}
6819*de75638bSdrhdo_execsql_test joinB-492 {
6820*de75638bSdrh  SELECT a, c, d, e, f, g
6821*de75638bSdrh  FROM t1
6822*de75638bSdrh  FULL JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
6823*de75638bSdrh  LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
6824*de75638bSdrh  WHERE a<=18
6825*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6826*de75638bSdrh} {
6827*de75638bSdrh  11 31  - 31 31  -
6828*de75638bSdrh  12 32 32 32  -  -
6829*de75638bSdrh  13  - 33 33 33  -
6830*de75638bSdrh  15 35 35 35 35 35
6831*de75638bSdrh  17 37  - 37  -  -
6832*de75638bSdrh  18  - 38 38  -  -
6833*de75638bSdrh}
6834*de75638bSdrhdo_execsql_test joinB-493 {
6835*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6836*de75638bSdrh  FROM t1
6837*de75638bSdrh  FULL JOIN t2 USING(a)
6838*de75638bSdrh  FULL JOIN t3 USING(a)
6839*de75638bSdrh  LEFT JOIN t4 USING(a)
6840*de75638bSdrh  RIGHT JOIN t5 USING(a)
6841*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6842*de75638bSdrh} {
6843*de75638bSdrh  15 15 15 15 15 15
6844*de75638bSdrh  17 17  - 17  - 17
6845*de75638bSdrh  18  - 18 18  - 18
6846*de75638bSdrh  19  -  - 19 19 19
6847*de75638bSdrh}
6848*de75638bSdrhdo_execsql_test joinB-494 {
6849*de75638bSdrh  SELECT a, b, c, d, e, f, g
6850*de75638bSdrh  FROM t1
6851*de75638bSdrh  FULL JOIN t2 USING(a,b)
6852*de75638bSdrh  FULL JOIN t3 USING(a,b)
6853*de75638bSdrh  LEFT JOIN t4 USING(a,b)
6854*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
6855*de75638bSdrh  WHERE d<>33 OR d IS NULL
6856*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6857*de75638bSdrh} {
6858*de75638bSdrh  15 25 35 35 35 35 35
6859*de75638bSdrh  17 27 37  - 37  - 37
6860*de75638bSdrh  18 28  - 38 38  - 38
6861*de75638bSdrh  19 29  -  - 39 39 39
6862*de75638bSdrh}
6863*de75638bSdrhdo_execsql_test joinB-495 {
6864*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6865*de75638bSdrh  FROM t1
6866*de75638bSdrh  FULL JOIN t2 USING(a)
6867*de75638bSdrh  FULL JOIN t3 USING(a)
6868*de75638bSdrh  LEFT JOIN t4 USING(a)
6869*de75638bSdrh  FULL JOIN t5 USING(a)
6870*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6871*de75638bSdrh} {
6872*de75638bSdrh   -  -  -  -  -  -
6873*de75638bSdrh   -  -  -  -  -  -
6874*de75638bSdrh  11 11  - 11 11  -
6875*de75638bSdrh  12 12 12 12  -  -
6876*de75638bSdrh  13  - 13 13 13  -
6877*de75638bSdrh  15 15 15 15 15 15
6878*de75638bSdrh  17 17  - 17  - 17
6879*de75638bSdrh  18  - 18 18  - 18
6880*de75638bSdrh  19  -  - 19 19 19
6881*de75638bSdrh}
6882*de75638bSdrhdo_execsql_test joinB-496 {
6883*de75638bSdrh  SELECT b, c, d, e, f, g
6884*de75638bSdrh  FROM t1
6885*de75638bSdrh  NATURAL FULL JOIN t2
6886*de75638bSdrh  NATURAL FULL JOIN t3
6887*de75638bSdrh  NATURAL LEFT JOIN t4
6888*de75638bSdrh  NATURAL FULL JOIN t5
6889*de75638bSdrh  WHERE b BETWEEN 12 AND 17
6890*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6891*de75638bSdrh} {
6892*de75638bSdrh}
6893*de75638bSdrhdo_execsql_test joinB-497 {
6894*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6895*de75638bSdrh  FROM t1
6896*de75638bSdrh  FULL JOIN t2 USING(a)
6897*de75638bSdrh  FULL JOIN t3 USING(a)
6898*de75638bSdrh  RIGHT JOIN t4 USING(a)
6899*de75638bSdrh  INNER JOIN t5 USING(a)
6900*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6901*de75638bSdrh} {
6902*de75638bSdrh  15 15 15 15 15 15
6903*de75638bSdrh  19  -  - 19 19 19
6904*de75638bSdrh}
6905*de75638bSdrhdo_execsql_test joinB-498 {
6906*de75638bSdrh  SELECT a, c, d, e, f, g
6907*de75638bSdrh  FROM t1
6908*de75638bSdrh  FULL JOIN t2 USING(a,b)
6909*de75638bSdrh  FULL JOIN t3 USING(a,b)
6910*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
6911*de75638bSdrh  INNER JOIN t5 USING(a,b)
6912*de75638bSdrh  WHERE a<>13
6913*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6914*de75638bSdrh} {
6915*de75638bSdrh  15 35 35 35 35 35
6916*de75638bSdrh  19  -  - 39 39 39
6917*de75638bSdrh}
6918*de75638bSdrhdo_execsql_test joinB-499 {
6919*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6920*de75638bSdrh  FROM t1
6921*de75638bSdrh  FULL JOIN t2 USING(a)
6922*de75638bSdrh  FULL JOIN t3 USING(a)
6923*de75638bSdrh  RIGHT JOIN t4 USING(a)
6924*de75638bSdrh  LEFT JOIN t5 USING(a)
6925*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6926*de75638bSdrh} {
6927*de75638bSdrh  11 11  - 11 11  -
6928*de75638bSdrh  13  - 13 13 13  -
6929*de75638bSdrh  15 15 15 15 15 15
6930*de75638bSdrh  19  -  - 19 19 19
6931*de75638bSdrh}
6932*de75638bSdrhdo_execsql_test joinB-500 {
6933*de75638bSdrh  SELECT a, c, d, e, f, g
6934*de75638bSdrh  FROM t1
6935*de75638bSdrh  FULL JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
6936*de75638bSdrh  RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
6937*de75638bSdrh  WHERE a<=18
6938*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6939*de75638bSdrh} {
6940*de75638bSdrh  11 31  - 31 31  -
6941*de75638bSdrh  13  - 33 33 33  -
6942*de75638bSdrh  15 35 35 35 35 35
6943*de75638bSdrh}
6944*de75638bSdrhdo_execsql_test joinB-501 {
6945*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6946*de75638bSdrh  FROM t1
6947*de75638bSdrh  FULL JOIN t2 USING(a)
6948*de75638bSdrh  FULL JOIN t3 USING(a)
6949*de75638bSdrh  RIGHT JOIN t4 USING(a)
6950*de75638bSdrh  RIGHT JOIN t5 USING(a)
6951*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6952*de75638bSdrh} {
6953*de75638bSdrh  15 15 15 15 15 15
6954*de75638bSdrh  17  -  -  -  - 17
6955*de75638bSdrh  18  -  -  -  - 18
6956*de75638bSdrh  19  -  - 19 19 19
6957*de75638bSdrh}
6958*de75638bSdrhdo_execsql_test joinB-502 {
6959*de75638bSdrh  SELECT a, b, c, d, e, f, g
6960*de75638bSdrh  FROM t1
6961*de75638bSdrh  FULL JOIN t2 USING(a,b)
6962*de75638bSdrh  FULL JOIN t3 USING(a,b)
6963*de75638bSdrh  RIGHT JOIN t4 USING(a,b)
6964*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
6965*de75638bSdrh  WHERE d<>33 OR d IS NULL
6966*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6967*de75638bSdrh} {
6968*de75638bSdrh  15 25 35 35 35 35 35
6969*de75638bSdrh  17 27  -  -  -  - 37
6970*de75638bSdrh  18 28  -  -  -  - 38
6971*de75638bSdrh  19 29  -  - 39 39 39
6972*de75638bSdrh}
6973*de75638bSdrhdo_execsql_test joinB-503 {
6974*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
6975*de75638bSdrh  FROM t1
6976*de75638bSdrh  FULL JOIN t2 USING(a)
6977*de75638bSdrh  FULL JOIN t3 USING(a)
6978*de75638bSdrh  RIGHT JOIN t4 USING(a)
6979*de75638bSdrh  FULL JOIN t5 USING(a)
6980*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6981*de75638bSdrh} {
6982*de75638bSdrh  11 11  - 11 11  -
6983*de75638bSdrh  13  - 13 13 13  -
6984*de75638bSdrh  15 15 15 15 15 15
6985*de75638bSdrh  17  -  -  -  - 17
6986*de75638bSdrh  18  -  -  -  - 18
6987*de75638bSdrh  19  -  - 19 19 19
6988*de75638bSdrh}
6989*de75638bSdrhdo_execsql_test joinB-504 {
6990*de75638bSdrh  SELECT b, c, d, e, f, g
6991*de75638bSdrh  FROM t1
6992*de75638bSdrh  NATURAL FULL JOIN t2
6993*de75638bSdrh  NATURAL FULL JOIN t3
6994*de75638bSdrh  NATURAL RIGHT JOIN t4
6995*de75638bSdrh  NATURAL FULL JOIN t5
6996*de75638bSdrh  WHERE b BETWEEN 12 AND 17
6997*de75638bSdrh  ORDER BY 1 NULLS FIRST;
6998*de75638bSdrh} {
6999*de75638bSdrh}
7000*de75638bSdrhdo_execsql_test joinB-505 {
7001*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
7002*de75638bSdrh  FROM t1
7003*de75638bSdrh  FULL JOIN t2 USING(a)
7004*de75638bSdrh  FULL JOIN t3 USING(a)
7005*de75638bSdrh  FULL JOIN t4 USING(a)
7006*de75638bSdrh  INNER JOIN t5 USING(a)
7007*de75638bSdrh  ORDER BY 1 NULLS FIRST;
7008*de75638bSdrh} {
7009*de75638bSdrh  15 15 15 15 15 15
7010*de75638bSdrh  17 17  - 17  - 17
7011*de75638bSdrh  18  - 18 18  - 18
7012*de75638bSdrh  19  -  - 19 19 19
7013*de75638bSdrh}
7014*de75638bSdrhdo_execsql_test joinB-506 {
7015*de75638bSdrh  SELECT a, c, d, e, f, g
7016*de75638bSdrh  FROM t1
7017*de75638bSdrh  FULL JOIN t2 USING(a,b)
7018*de75638bSdrh  FULL JOIN t3 USING(a,b)
7019*de75638bSdrh  FULL JOIN t4 USING(a,b)
7020*de75638bSdrh  INNER JOIN t5 USING(a,b)
7021*de75638bSdrh  WHERE a<>13
7022*de75638bSdrh  ORDER BY 1 NULLS FIRST;
7023*de75638bSdrh} {
7024*de75638bSdrh  15 35 35 35 35 35
7025*de75638bSdrh  17 37  - 37  - 37
7026*de75638bSdrh  18  - 38 38  - 38
7027*de75638bSdrh  19  -  - 39 39 39
7028*de75638bSdrh}
7029*de75638bSdrhdo_execsql_test joinB-507 {
7030*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
7031*de75638bSdrh  FROM t1
7032*de75638bSdrh  FULL JOIN t2 USING(a)
7033*de75638bSdrh  FULL JOIN t3 USING(a)
7034*de75638bSdrh  FULL JOIN t4 USING(a)
7035*de75638bSdrh  LEFT JOIN t5 USING(a)
7036*de75638bSdrh  ORDER BY 1 NULLS FIRST;
7037*de75638bSdrh} {
7038*de75638bSdrh   -  -  -  -  -  -
7039*de75638bSdrh   -  -  -  -  -  -
7040*de75638bSdrh  11 11  - 11 11  -
7041*de75638bSdrh  12 12 12 12  -  -
7042*de75638bSdrh  13  - 13 13 13  -
7043*de75638bSdrh  15 15 15 15 15 15
7044*de75638bSdrh  17 17  - 17  - 17
7045*de75638bSdrh  18  - 18 18  - 18
7046*de75638bSdrh  19  -  - 19 19 19
7047*de75638bSdrh}
7048*de75638bSdrhdo_execsql_test joinB-508 {
7049*de75638bSdrh  SELECT a, c, d, e, f, g
7050*de75638bSdrh  FROM t1
7051*de75638bSdrh  FULL JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
7052*de75638bSdrh  FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
7053*de75638bSdrh  WHERE a<=18
7054*de75638bSdrh  ORDER BY 1 NULLS FIRST;
7055*de75638bSdrh} {
7056*de75638bSdrh  11 31  - 31 31  -
7057*de75638bSdrh  12 32 32 32  -  -
7058*de75638bSdrh  13  - 33 33 33  -
7059*de75638bSdrh  15 35 35 35 35 35
7060*de75638bSdrh  17 37  - 37  -  -
7061*de75638bSdrh  18  - 38 38  -  -
7062*de75638bSdrh}
7063*de75638bSdrhdo_execsql_test joinB-509 {
7064*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
7065*de75638bSdrh  FROM t1
7066*de75638bSdrh  FULL JOIN t2 USING(a)
7067*de75638bSdrh  FULL JOIN t3 USING(a)
7068*de75638bSdrh  FULL JOIN t4 USING(a)
7069*de75638bSdrh  RIGHT JOIN t5 USING(a)
7070*de75638bSdrh  ORDER BY 1 NULLS FIRST;
7071*de75638bSdrh} {
7072*de75638bSdrh  15 15 15 15 15 15
7073*de75638bSdrh  17 17  - 17  - 17
7074*de75638bSdrh  18  - 18 18  - 18
7075*de75638bSdrh  19  -  - 19 19 19
7076*de75638bSdrh}
7077*de75638bSdrhdo_execsql_test joinB-510 {
7078*de75638bSdrh  SELECT a, b, c, d, e, f, g
7079*de75638bSdrh  FROM t1
7080*de75638bSdrh  FULL JOIN t2 USING(a,b)
7081*de75638bSdrh  FULL JOIN t3 USING(a,b)
7082*de75638bSdrh  FULL JOIN t4 USING(a,b)
7083*de75638bSdrh  RIGHT JOIN t5 USING(a,b)
7084*de75638bSdrh  WHERE d<>33 OR d IS NULL
7085*de75638bSdrh  ORDER BY 1 NULLS FIRST;
7086*de75638bSdrh} {
7087*de75638bSdrh  15 25 35 35 35 35 35
7088*de75638bSdrh  17 27 37  - 37  - 37
7089*de75638bSdrh  18 28  - 38 38  - 38
7090*de75638bSdrh  19 29  -  - 39 39 39
7091*de75638bSdrh}
7092*de75638bSdrhdo_execsql_test joinB-511 {
7093*de75638bSdrh  SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
7094*de75638bSdrh  FROM t1
7095*de75638bSdrh  FULL JOIN t2 USING(a)
7096*de75638bSdrh  FULL JOIN t3 USING(a)
7097*de75638bSdrh  FULL JOIN t4 USING(a)
7098*de75638bSdrh  FULL JOIN t5 USING(a)
7099*de75638bSdrh  ORDER BY 1 NULLS FIRST;
7100*de75638bSdrh} {
7101*de75638bSdrh   -  -  -  -  -  -
7102*de75638bSdrh   -  -  -  -  -  -
7103*de75638bSdrh  11 11  - 11 11  -
7104*de75638bSdrh  12 12 12 12  -  -
7105*de75638bSdrh  13  - 13 13 13  -
7106*de75638bSdrh  15 15 15 15 15 15
7107*de75638bSdrh  17 17  - 17  - 17
7108*de75638bSdrh  18  - 18 18  - 18
7109*de75638bSdrh  19  -  - 19 19 19
7110*de75638bSdrh}
7111*de75638bSdrhdo_execsql_test joinB-512 {
7112*de75638bSdrh  SELECT b, c, d, e, f, g
7113*de75638bSdrh  FROM t1
7114*de75638bSdrh  NATURAL FULL JOIN t2
7115*de75638bSdrh  NATURAL FULL JOIN t3
7116*de75638bSdrh  NATURAL FULL JOIN t4
7117*de75638bSdrh  NATURAL FULL JOIN t5
7118*de75638bSdrh  WHERE b BETWEEN 12 AND 17
7119*de75638bSdrh  ORDER BY 1 NULLS FIRST;
7120*de75638bSdrh} {
7121*de75638bSdrh}
7122*de75638bSdrhfinish_test
7123*de75638bSdrh
7124*de75638bSdrh##############################################################################
7125*de75638bSdrh# Here is the original TCL script that generated the psql input file:
7126*de75638bSdrh#
7127*de75638bSdrh#
7128*de75638bSdrh# puts "
7129*de75638bSdrh# \\pset border off
7130*de75638bSdrh# \\pset tuples_only on
7131*de75638bSdrh# \\pset null -
7132*de75638bSdrh#
7133*de75638bSdrh# DROP TABLE IF EXISTS t1;
7134*de75638bSdrh# DROP TABLE IF EXISTS t2;
7135*de75638bSdrh# DROP TABLE IF EXISTS t3;
7136*de75638bSdrh# DROP TABLE IF EXISTS t4;
7137*de75638bSdrh# DROP TABLE IF EXISTS t5;
7138*de75638bSdrh# CREATE TABLE t1(a INT, b INT, c INT);
7139*de75638bSdrh# CREATE TABLE t2(a INT, b INT, d INT);
7140*de75638bSdrh# CREATE TABLE t3(a INT, b INT, e INT);
7141*de75638bSdrh# CREATE TABLE t4(a INT, b INT, f INT);
7142*de75638bSdrh# CREATE TABLE t5(a INT, b INT, g INT);
7143*de75638bSdrh# INSERT INTO t1 VALUES(11,21,31),(12,22,32),(15,25,35),(17,27,37);
7144*de75638bSdrh# INSERT INTO t2 VALUES(12,22,32),(13,23,33),(15,25,35),(18,28,38),(NULL,NULL,36);
7145*de75638bSdrh# INSERT INTO t4 VALUES(11,21,31),(13,23,33),(15,25,35),(19,29,39);
7146*de75638bSdrh# INSERT INTO t3 SELECT * FROM t1 UNION SELECT * FROM t2 UNION SELECT * FROM t4;
7147*de75638bSdrh# INSERT INTO t5 SELECT * FROM t3 WHERE a>=15;
7148*de75638bSdrh# "
7149*de75638bSdrh#
7150*de75638bSdrh# proc echo {prefix txt} {
7151*de75638bSdrh#   regsub -all {\n} $txt \n$prefix txt
7152*de75638bSdrh#   puts "$prefix$txt"
7153*de75638bSdrh# }
7154*de75638bSdrh#
7155*de75638bSdrh# set n 0
7156*de75638bSdrh# set k 0
7157*de75638bSdrh# foreach j1 {INNER LEFT RIGHT FULL} {
7158*de75638bSdrh#   foreach j2 {INNER LEFT RIGHT FULL} {
7159*de75638bSdrh#     foreach j3 {INNER LEFT RIGHT FULL} {
7160*de75638bSdrh#       foreach j4 {INNER LEFT RIGHT FULL} {
7161*de75638bSdrh#
7162*de75638bSdrh# incr n
7163*de75638bSdrh# incr k
7164*de75638bSdrh# set q1 ""
7165*de75638bSdrh# append q1 "SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a\n"
7166*de75638bSdrh# append q1 "  FROM t1\n"
7167*de75638bSdrh# append q1 "       $j1 JOIN t2 USING(a)\n"
7168*de75638bSdrh# append q1 "       $j2 JOIN t3 USING(a)\n"
7169*de75638bSdrh# append q1 "       $j3 JOIN t4 USING(a)\n"
7170*de75638bSdrh# append q1 "       $j4 JOIN t5 USING(a)\n"
7171*de75638bSdrh# append q1 " ORDER BY 1 NULLS FIRST;"
7172*de75638bSdrh#
7173*de75638bSdrh# echo "\\qecho " "do_execsql_test joinB-$n \{"
7174*de75638bSdrh# echo "\\qecho X  " $q1
7175*de75638bSdrh# echo "\\qecho " "\} \{"
7176*de75638bSdrh# puts $q1
7177*de75638bSdrh# echo "\\qecho " "\}"
7178*de75638bSdrh#
7179*de75638bSdrh# switch [expr {$k%4}] {
7180*de75638bSdrh#   0 {
7181*de75638bSdrh#     set q2 ""
7182*de75638bSdrh#     append q2 "SELECT b, c, d, e, f, g\n"
7183*de75638bSdrh#     append q2 "  FROM t1\n"
7184*de75638bSdrh#     append q2 "       NATURAL $j1 JOIN t2\n"
7185*de75638bSdrh#     append q2 "       NATURAL $j2 JOIN t3\n"
7186*de75638bSdrh#     append q2 "       NATURAL $j3 JOIN t4\n"
7187*de75638bSdrh#     append q2 "       NATURAL $j4 JOIN t5\n"
7188*de75638bSdrh#     append q2 " WHERE b BETWEEN 12 AND 17\n"
7189*de75638bSdrh#     append q2 " ORDER BY 1 NULLS FIRST;"
7190*de75638bSdrh#     incr n
7191*de75638bSdrh#     echo "\\qecho " "do_execsql_test joinB-$n \{"
7192*de75638bSdrh#     echo "\\qecho X  " $q2
7193*de75638bSdrh#     echo "\\qecho " "\} \{"
7194*de75638bSdrh#     puts $q2
7195*de75638bSdrh#     echo "\\qecho " "\}"
7196*de75638bSdrh#   }
7197*de75638bSdrh#   1 {
7198*de75638bSdrh#     set q2 ""
7199*de75638bSdrh#     append q2 "SELECT a, c, d, e, f, g\n"
7200*de75638bSdrh#     append q2 "  FROM t1\n"
7201*de75638bSdrh#     append q2 "       $j1 JOIN t2 USING(a,b)\n"
7202*de75638bSdrh#     append q2 "       $j2 JOIN t3 USING(a,b)\n"
7203*de75638bSdrh#     append q2 "       $j3 JOIN t4 USING(a,b)\n"
7204*de75638bSdrh#     append q2 "       $j4 JOIN t5 USING(a,b)\n"
7205*de75638bSdrh#     append q2 " WHERE a<>13\n"
7206*de75638bSdrh#     append q2 " ORDER BY 1 NULLS FIRST;"
7207*de75638bSdrh#     incr n
7208*de75638bSdrh#     echo "\\qecho " "do_execsql_test joinB-$n \{"
7209*de75638bSdrh#     echo "\\qecho X  " $q2
7210*de75638bSdrh#     echo "\\qecho " "\} \{"
7211*de75638bSdrh#     puts $q2
7212*de75638bSdrh#     echo "\\qecho " "\}"
7213*de75638bSdrh#   }
7214*de75638bSdrh#   2 {
7215*de75638bSdrh#     set q2 ""
7216*de75638bSdrh#     append q2 "SELECT a, c, d, e, f, g\n"
7217*de75638bSdrh#     append q2 "  FROM t1\n"
7218*de75638bSdrh#     append q2 "       $j1 JOIN (t2 $j2 JOIN t3 USING(a)) USING(a)\n"
7219*de75638bSdrh#     append q2 "       $j3 JOIN (t4 $j4 JOIN t5 USING(a)) USING(a)\n"
7220*de75638bSdrh#     append q2 " WHERE a<=18\n"
7221*de75638bSdrh#     append q2 " ORDER BY 1 NULLS FIRST;"
7222*de75638bSdrh#     incr n
7223*de75638bSdrh#     echo "\\qecho " "do_execsql_test joinB-$n \{"
7224*de75638bSdrh#     echo "\\qecho X  " $q2
7225*de75638bSdrh#     echo "\\qecho " "\} \{"
7226*de75638bSdrh#     puts $q2
7227*de75638bSdrh#     echo "\\qecho " "\}"
7228*de75638bSdrh#   }
7229*de75638bSdrh#   3 {
7230*de75638bSdrh#     set q2 ""
7231*de75638bSdrh#     append q2 "SELECT a, b, c, d, e, f, g\n"
7232*de75638bSdrh#     append q2 "  FROM t1\n"
7233*de75638bSdrh#     append q2 "       $j1 JOIN t2 USING(a,b)\n"
7234*de75638bSdrh#     append q2 "       $j2 JOIN t3 USING(a,b)\n"
7235*de75638bSdrh#     append q2 "       $j3 JOIN t4 USING(a,b)\n"
7236*de75638bSdrh#     append q2 "       $j4 JOIN t5 USING(a,b)\n"
7237*de75638bSdrh#     append q2 " WHERE d<>33 OR d IS NULL\n"
7238*de75638bSdrh#     append q2 " ORDER BY 1 NULLS FIRST;"
7239*de75638bSdrh#     incr n
7240*de75638bSdrh#     echo "\\qecho " "do_execsql_test joinB-$n \{"
7241*de75638bSdrh#     echo "\\qecho X  " $q2
7242*de75638bSdrh#     echo "\\qecho " "\} \{"
7243*de75638bSdrh#     puts $q2
7244*de75638bSdrh#     echo "\\qecho " "\}"
7245*de75638bSdrh#   }
7246*de75638bSdrh# }
7247*de75638bSdrh#
7248*de75638bSdrh#       }
7249*de75638bSdrh#     }
7250*de75638bSdrh#   }
7251*de75638bSdrh# }
7252*de75638bSdrh##############################################################################
7253