1
by brian
clean slate |
1 |
DROP TABLE IF EXISTS t0,t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
2 |
CREATE TABLE t0 (a int, b int, c int);
|
|
3 |
CREATE TABLE t1 (a int, b int, c int);
|
|
4 |
CREATE TABLE t2 (a int, b int, c int);
|
|
5 |
CREATE TABLE t3 (a int, b int, c int);
|
|
6 |
CREATE TABLE t4 (a int, b int, c int);
|
|
7 |
CREATE TABLE t5 (a int, b int, c int);
|
|
8 |
CREATE TABLE t6 (a int, b int, c int);
|
|
9 |
CREATE TABLE t7 (a int, b int, c int);
|
|
10 |
CREATE TABLE t8 (a int, b int, c int);
|
|
11 |
CREATE TABLE t9 (a int, b int, c int);
|
|
12 |
INSERT INTO t0 VALUES (1,1,0), (1,2,0), (2,2,0);
|
|
13 |
INSERT INTO t1 VALUES (1,3,0), (2,2,0), (3,2,0);
|
|
14 |
INSERT INTO t2 VALUES (3,3,0), (4,2,0), (5,3,0);
|
|
15 |
INSERT INTO t3 VALUES (1,2,0), (2,2,0);
|
|
16 |
INSERT INTO t4 VALUES (3,2,0), (4,2,0);
|
|
17 |
INSERT INTO t5 VALUES (3,1,0), (2,2,0), (3,3,0);
|
|
18 |
INSERT INTO t6 VALUES (3,2,0), (6,2,0), (6,1,0);
|
|
19 |
INSERT INTO t7 VALUES (1,1,0), (2,2,0);
|
|
20 |
INSERT INTO t8 VALUES (0,2,0), (1,2,0);
|
|
21 |
INSERT INTO t9 VALUES (1,1,0), (1,2,0), (3,3,0);
|
|
22 |
SELECT t2.a,t2.b
|
|
23 |
FROM t2;
|
|
24 |
a b
|
|
25 |
3 3
|
|
26 |
4 2
|
|
27 |
5 3
|
|
28 |
SELECT t3.a,t3.b
|
|
29 |
FROM t3;
|
|
30 |
a b
|
|
31 |
1 2
|
|
32 |
2 2
|
|
33 |
SELECT t4.a,t4.b
|
|
34 |
FROM t4;
|
|
35 |
a b
|
|
36 |
3 2
|
|
37 |
4 2
|
|
38 |
SELECT t3.a,t3.b,t4.a,t4.b
|
|
39 |
FROM t3,t4;
|
|
40 |
a b a b
|
|
41 |
1 2 3 2
|
|
42 |
2 2 3 2
|
|
43 |
1 2 4 2
|
|
44 |
2 2 4 2
|
|
45 |
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b
|
|
46 |
FROM t2
|
|
47 |
LEFT JOIN
|
|
48 |
(t3, t4)
|
|
49 |
ON t2.b=t4.b;
|
|
50 |
a b a b a b
|
|
51 |
3 3 NULL NULL NULL NULL
|
|
52 |
4 2 1 2 3 2
|
|
53 |
4 2 1 2 4 2
|
|
54 |
4 2 2 2 3 2
|
|
55 |
4 2 2 2 4 2
|
|
56 |
5 3 NULL NULL NULL NULL
|
|
57 |
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b
|
|
58 |
FROM t2
|
|
59 |
LEFT JOIN
|
|
60 |
(t3, t4)
|
|
61 |
ON t3.a=1 AND t2.b=t4.b;
|
|
62 |
a b a b a b
|
|
63 |
3 3 NULL NULL NULL NULL
|
|
64 |
4 2 1 2 3 2
|
|
65 |
4 2 1 2 4 2
|
|
66 |
5 3 NULL NULL NULL NULL
|
|
67 |
EXPLAIN EXTENDED
|
|
68 |
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b
|
|
69 |
FROM t2
|
|
70 |
LEFT JOIN
|
|
71 |
(t3, t4)
|
|
72 |
ON t2.b=t4.b
|
|
73 |
WHERE t3.a=1 OR t3.c IS NULL;
|
|
74 |
id select_type table type possible_keys key key_len ref rows filtered Extra
|
|
75 |
1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00
|
|
76 |
1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00 Using where
|
|
77 |
1 SIMPLE t4 ALL NULL NULL NULL NULL 2 100.00
|
|
78 |
Warnings:
|
|
79 |
Note 1003 select "test"."t2"."a" AS "a","test"."t2"."b" AS "b","test"."t3"."a" AS "a","test"."t3"."b" AS "b","test"."t4"."a" AS "a","test"."t4"."b" AS "b" from "test"."t2" left join ("test"."t3" join "test"."t4") on(("test"."t4"."b" = "test"."t2"."b")) where (("test"."t3"."a" = 1) or isnull("test"."t3"."c"))
|
|
80 |
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b
|
|
81 |
FROM t2
|
|
82 |
LEFT JOIN
|
|
83 |
(t3, t4)
|
|
84 |
ON t2.b=t4.b
|
|
85 |
WHERE t3.a=1 OR t3.c IS NULL;
|
|
86 |
a b a b a b
|
|
87 |
3 3 NULL NULL NULL NULL
|
|
88 |
4 2 1 2 3 2
|
|
89 |
4 2 1 2 4 2
|
|
90 |
5 3 NULL NULL NULL NULL
|
|
91 |
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b
|
|
92 |
FROM t2
|
|
93 |
LEFT JOIN
|
|
94 |
(t3, t4)
|
|
95 |
ON t2.b=t4.b
|
|
96 |
WHERE t3.a>1 OR t3.c IS NULL;
|
|
97 |
a b a b a b
|
|
98 |
3 3 NULL NULL NULL NULL
|
|
99 |
4 2 2 2 3 2
|
|
100 |
4 2 2 2 4 2
|
|
101 |
5 3 NULL NULL NULL NULL
|
|
102 |
SELECT t5.a,t5.b
|
|
103 |
FROM t5;
|
|
104 |
a b
|
|
105 |
3 1
|
|
106 |
2 2
|
|
107 |
3 3
|
|
108 |
SELECT t3.a,t3.b,t4.a,t4.b,t5.a,t5.b
|
|
109 |
FROM t3,t4,t5;
|
|
110 |
a b a b a b
|
|
111 |
1 2 3 2 3 1
|
|
112 |
2 2 3 2 3 1
|
|
113 |
1 2 4 2 3 1
|
|
114 |
2 2 4 2 3 1
|
|
115 |
1 2 3 2 2 2
|
|
116 |
2 2 3 2 2 2
|
|
117 |
1 2 4 2 2 2
|
|
118 |
2 2 4 2 2 2
|
|
119 |
1 2 3 2 3 3
|
|
120 |
2 2 3 2 3 3
|
|
121 |
1 2 4 2 3 3
|
|
122 |
2 2 4 2 3 3
|
|
123 |
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,t5.a,t5.b
|
|
124 |
FROM t2
|
|
125 |
LEFT JOIN
|
|
126 |
(t3, t4, t5)
|
|
127 |
ON t2.b=t4.b;
|
|
128 |
a b a b a b a b
|
|
129 |
3 3 NULL NULL NULL NULL NULL NULL
|
|
130 |
4 2 1 2 3 2 3 1
|
|
131 |
4 2 1 2 3 2 2 2
|
|
132 |
4 2 1 2 3 2 3 3
|
|
133 |
4 2 1 2 4 2 3 1
|
|
134 |
4 2 1 2 4 2 2 2
|
|
135 |
4 2 1 2 4 2 3 3
|
|
136 |
4 2 2 2 3 2 3 1
|
|
137 |
4 2 2 2 3 2 2 2
|
|
138 |
4 2 2 2 3 2 3 3
|
|
139 |
4 2 2 2 4 2 3 1
|
|
140 |
4 2 2 2 4 2 2 2
|
|
141 |
4 2 2 2 4 2 3 3
|
|
142 |
5 3 NULL NULL NULL NULL NULL NULL
|
|
143 |
EXPLAIN EXTENDED
|
|
144 |
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,t5.a,t5.b
|
|
145 |
FROM t2
|
|
146 |
LEFT JOIN
|
|
147 |
(t3, t4, t5)
|
|
148 |
ON t2.b=t4.b
|
|
149 |
WHERE t3.a>1 OR t3.c IS NULL;
|
|
150 |
id select_type table type possible_keys key key_len ref rows filtered Extra
|
|
151 |
1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00
|
|
152 |
1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00 Using where
|
|
153 |
1 SIMPLE t4 ALL NULL NULL NULL NULL 2 100.00
|
|
154 |
1 SIMPLE t5 ALL NULL NULL NULL NULL 3 100.00
|
|
155 |
Warnings:
|
|
156 |
Note 1003 select "test"."t2"."a" AS "a","test"."t2"."b" AS "b","test"."t3"."a" AS "a","test"."t3"."b" AS "b","test"."t4"."a" AS "a","test"."t4"."b" AS "b","test"."t5"."a" AS "a","test"."t5"."b" AS "b" from "test"."t2" left join ("test"."t3" join "test"."t4" join "test"."t5") on(("test"."t4"."b" = "test"."t2"."b")) where (("test"."t3"."a" > 1) or isnull("test"."t3"."c"))
|
|
157 |
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,t5.a,t5.b
|
|
158 |
FROM t2
|
|
159 |
LEFT JOIN
|
|
160 |
(t3, t4, t5)
|
|
161 |
ON t2.b=t4.b
|
|
162 |
WHERE t3.a>1 OR t3.c IS NULL;
|
|
163 |
a b a b a b a b
|
|
164 |
3 3 NULL NULL NULL NULL NULL NULL
|
|
165 |
4 2 2 2 3 2 3 1
|
|
166 |
4 2 2 2 3 2 2 2
|
|
167 |
4 2 2 2 3 2 3 3
|
|
168 |
4 2 2 2 4 2 3 1
|
|
169 |
4 2 2 2 4 2 2 2
|
|
170 |
4 2 2 2 4 2 3 3
|
|
171 |
5 3 NULL NULL NULL NULL NULL NULL
|
|
172 |
EXPLAIN EXTENDED
|
|
173 |
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,t5.a,t5.b
|
|
174 |
FROM t2
|
|
175 |
LEFT JOIN
|
|
176 |
(t3, t4, t5)
|
|
177 |
ON t2.b=t4.b
|
|
178 |
WHERE (t3.a>1 OR t3.c IS NULL) AND
|
|
179 |
(t5.a<3 OR t5.c IS NULL);
|
|
180 |
id select_type table type possible_keys key key_len ref rows filtered Extra
|
|
181 |
1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00
|
|
182 |
1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00 Using where
|
|
183 |
1 SIMPLE t4 ALL NULL NULL NULL NULL 2 100.00
|
|
184 |
1 SIMPLE t5 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
185 |
Warnings:
|
|
186 |
Note 1003 select "test"."t2"."a" AS "a","test"."t2"."b" AS "b","test"."t3"."a" AS "a","test"."t3"."b" AS "b","test"."t4"."a" AS "a","test"."t4"."b" AS "b","test"."t5"."a" AS "a","test"."t5"."b" AS "b" from "test"."t2" left join ("test"."t3" join "test"."t4" join "test"."t5") on(("test"."t4"."b" = "test"."t2"."b")) where ((("test"."t3"."a" > 1) or isnull("test"."t3"."c")) and (("test"."t5"."a" < 3) or isnull("test"."t5"."c")))
|
|
187 |
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,t5.a,t5.b
|
|
188 |
FROM t2
|
|
189 |
LEFT JOIN
|
|
190 |
(t3, t4, t5)
|
|
191 |
ON t2.b=t4.b
|
|
192 |
WHERE (t3.a>1 OR t3.c IS NULL) AND
|
|
193 |
(t5.a<3 OR t5.c IS NULL);
|
|
194 |
a b a b a b a b
|
|
195 |
3 3 NULL NULL NULL NULL NULL NULL
|
|
196 |
4 2 2 2 3 2 2 2
|
|
197 |
4 2 2 2 4 2 2 2
|
|
198 |
5 3 NULL NULL NULL NULL NULL NULL
|
|
199 |
SELECT t6.a,t6.b
|
|
200 |
FROM t6;
|
|
201 |
a b
|
|
202 |
3 2
|
|
203 |
6 2
|
|
204 |
6 1
|
|
205 |
SELECT t7.a,t7.b
|
|
206 |
FROM t7;
|
|
207 |
a b
|
|
208 |
1 1
|
|
209 |
2 2
|
|
210 |
SELECT t6.a,t6.b,t7.a,t7.b
|
|
211 |
FROM t6,t7;
|
|
212 |
a b a b
|
|
213 |
3 2 1 1
|
|
214 |
3 2 2 2
|
|
215 |
6 2 1 1
|
|
216 |
6 2 2 2
|
|
217 |
6 1 1 1
|
|
218 |
6 1 2 2
|
|
219 |
SELECT t8.a,t8.b
|
|
220 |
FROM t8;
|
|
221 |
a b
|
|
222 |
0 2
|
|
223 |
1 2
|
|
224 |
EXPLAIN EXTENDED
|
|
225 |
SELECT t6.a,t6.b,t7.a,t7.b,t8.a,t8.b
|
|
226 |
FROM (t6, t7)
|
|
227 |
LEFT JOIN
|
|
228 |
t8
|
|
229 |
ON t7.b=t8.b AND t6.b < 10;
|
|
230 |
id select_type table type possible_keys key key_len ref rows filtered Extra
|
|
231 |
1 SIMPLE t7 ALL NULL NULL NULL NULL 2 100.00
|
|
232 |
1 SIMPLE t6 ALL NULL NULL NULL NULL 3 100.00 Using join buffer
|
|
233 |
1 SIMPLE t8 ALL NULL NULL NULL NULL 2 100.00
|
|
234 |
Warnings:
|
|
235 |
Note 1003 select "test"."t6"."a" AS "a","test"."t6"."b" AS "b","test"."t7"."a" AS "a","test"."t7"."b" AS "b","test"."t8"."a" AS "a","test"."t8"."b" AS "b" from "test"."t6" join "test"."t7" left join "test"."t8" on((("test"."t7"."b" = "test"."t8"."b") and ("test"."t6"."b" < 10))) where 1
|
|
236 |
SELECT t6.a,t6.b,t7.a,t7.b,t8.a,t8.b
|
|
237 |
FROM (t6, t7)
|
|
238 |
LEFT JOIN
|
|
239 |
t8
|
|
240 |
ON t7.b=t8.b AND t6.b < 10;
|
|
241 |
a b a b a b
|
|
242 |
3 2 1 1 NULL NULL
|
|
243 |
3 2 2 2 0 2
|
|
244 |
3 2 2 2 1 2
|
|
245 |
6 2 1 1 NULL NULL
|
|
246 |
6 2 2 2 0 2
|
|
247 |
6 2 2 2 1 2
|
|
248 |
6 1 1 1 NULL NULL
|
|
249 |
6 1 2 2 0 2
|
|
250 |
6 1 2 2 1 2
|
|
251 |
SELECT t5.a,t5.b
|
|
252 |
FROM t5;
|
|
253 |
a b
|
|
254 |
3 1
|
|
255 |
2 2
|
|
256 |
3 3
|
|
257 |
SELECT t5.a,t5.b,t6.a,t6.b,t7.a,t7.b,t8.a,t8.b
|
|
258 |
FROM t5
|
|
259 |
LEFT JOIN
|
|
260 |
(
|
|
261 |
(t6, t7)
|
|
262 |
LEFT JOIN
|
|
263 |
t8
|
|
264 |
ON t7.b=t8.b AND t6.b < 10
|
|
265 |
)
|
|
266 |
ON t6.b >= 2 AND t5.b=t7.b;
|
|
267 |
a b a b a b a b
|
|
268 |
3 1 3 2 1 1 NULL NULL
|
|
269 |
3 1 6 2 1 1 NULL NULL
|
|
270 |
2 2 3 2 2 2 0 2
|
|
271 |
2 2 3 2 2 2 1 2
|
|
272 |
2 2 6 2 2 2 0 2
|
|
273 |
2 2 6 2 2 2 1 2
|
|
274 |
3 3 NULL NULL NULL NULL NULL NULL
|
|
275 |
SELECT t5.a,t5.b,t6.a,t6.b,t7.a,t7.b,t8.a,t8.b
|
|
276 |
FROM t5
|
|
277 |
LEFT JOIN
|
|
278 |
(
|
|
279 |
(t6, t7)
|
|
280 |
LEFT JOIN
|
|
281 |
t8
|
|
282 |
ON t7.b=t8.b AND t6.b < 10
|
|
283 |
)
|
|
284 |
ON t6.b >= 2 AND t5.b=t7.b AND
|
|
285 |
(t8.a < 1 OR t8.c IS NULL);
|
|
286 |
a b a b a b a b
|
|
287 |
3 1 3 2 1 1 NULL NULL
|
|
288 |
3 1 6 2 1 1 NULL NULL
|
|
289 |
2 2 3 2 2 2 0 2
|
|
290 |
2 2 6 2 2 2 0 2
|
|
291 |
3 3 NULL NULL NULL NULL NULL NULL
|
|
292 |
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b
|
|
293 |
FROM t2
|
|
294 |
LEFT JOIN
|
|
295 |
(t3, t4)
|
|
296 |
ON t3.a=1 AND t2.b=t4.b;
|
|
297 |
a b a b a b
|
|
298 |
3 3 NULL NULL NULL NULL
|
|
299 |
4 2 1 2 3 2
|
|
300 |
4 2 1 2 4 2
|
|
301 |
5 3 NULL NULL NULL NULL
|
|
302 |
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,
|
|
303 |
t5.a,t5.b,t6.a,t6.b,t7.a,t7.b,t8.a,t8.b
|
|
304 |
FROM t2
|
|
305 |
LEFT JOIN
|
|
306 |
(t3, t4)
|
|
307 |
ON t3.a=1 AND t2.b=t4.b,
|
|
308 |
t5
|
|
309 |
LEFT JOIN
|
|
310 |
(
|
|
311 |
(t6, t7)
|
|
312 |
LEFT JOIN
|
|
313 |
t8
|
|
314 |
ON t7.b=t8.b AND t6.b < 10
|
|
315 |
)
|
|
316 |
ON t6.b >= 2 AND t5.b=t7.b;
|
|
317 |
a b a b a b a b a b a b a b
|
|
318 |
3 3 NULL NULL NULL NULL 3 1 3 2 1 1 NULL NULL
|
|
319 |
3 3 NULL NULL NULL NULL 3 1 6 2 1 1 NULL NULL
|
|
320 |
4 2 1 2 3 2 3 1 3 2 1 1 NULL NULL
|
|
321 |
4 2 1 2 3 2 3 1 6 2 1 1 NULL NULL
|
|
322 |
4 2 1 2 4 2 3 1 3 2 1 1 NULL NULL
|
|
323 |
4 2 1 2 4 2 3 1 6 2 1 1 NULL NULL
|
|
324 |
5 3 NULL NULL NULL NULL 3 1 3 2 1 1 NULL NULL
|
|
325 |
5 3 NULL NULL NULL NULL 3 1 6 2 1 1 NULL NULL
|
|
326 |
3 3 NULL NULL NULL NULL 2 2 3 2 2 2 0 2
|
|
327 |
3 3 NULL NULL NULL NULL 2 2 3 2 2 2 1 2
|
|
328 |
3 3 NULL NULL NULL NULL 2 2 6 2 2 2 0 2
|
|
329 |
3 3 NULL NULL NULL NULL 2 2 6 2 2 2 1 2
|
|
330 |
4 2 1 2 3 2 2 2 3 2 2 2 0 2
|
|
331 |
4 2 1 2 3 2 2 2 3 2 2 2 1 2
|
|
332 |
4 2 1 2 3 2 2 2 6 2 2 2 0 2
|
|
333 |
4 2 1 2 3 2 2 2 6 2 2 2 1 2
|
|
334 |
4 2 1 2 4 2 2 2 3 2 2 2 0 2
|
|
335 |
4 2 1 2 4 2 2 2 3 2 2 2 1 2
|
|
336 |
4 2 1 2 4 2 2 2 6 2 2 2 0 2
|
|
337 |
4 2 1 2 4 2 2 2 6 2 2 2 1 2
|
|
338 |
5 3 NULL NULL NULL NULL 2 2 3 2 2 2 0 2
|
|
339 |
5 3 NULL NULL NULL NULL 2 2 3 2 2 2 1 2
|
|
340 |
5 3 NULL NULL NULL NULL 2 2 6 2 2 2 0 2
|
|
341 |
5 3 NULL NULL NULL NULL 2 2 6 2 2 2 1 2
|
|
342 |
3 3 NULL NULL NULL NULL 3 3 NULL NULL NULL NULL NULL NULL
|
|
343 |
4 2 1 2 3 2 3 3 NULL NULL NULL NULL NULL NULL
|
|
344 |
4 2 1 2 4 2 3 3 NULL NULL NULL NULL NULL NULL
|
|
345 |
5 3 NULL NULL NULL NULL 3 3 NULL NULL NULL NULL NULL NULL
|
|
346 |
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,
|
|
347 |
t5.a,t5.b,t6.a,t6.b,t7.a,t7.b,t8.a,t8.b
|
|
348 |
FROM t2
|
|
349 |
LEFT JOIN
|
|
350 |
(t3, t4)
|
|
351 |
ON t3.a=1 AND t2.b=t4.b,
|
|
352 |
t5
|
|
353 |
LEFT JOIN
|
|
354 |
(
|
|
355 |
(t6, t7)
|
|
356 |
LEFT JOIN
|
|
357 |
t8
|
|
358 |
ON t7.b=t8.b AND t6.b < 10
|
|
359 |
)
|
|
360 |
ON t6.b >= 2 AND t5.b=t7.b
|
|
361 |
WHERE t2.a > 3 AND
|
|
362 |
(t6.a < 6 OR t6.c IS NULL);
|
|
363 |
a b a b a b a b a b a b a b
|
|
364 |
4 2 1 2 3 2 3 1 3 2 1 1 NULL NULL
|
|
365 |
4 2 1 2 4 2 3 1 3 2 1 1 NULL NULL
|
|
366 |
5 3 NULL NULL NULL NULL 3 1 3 2 1 1 NULL NULL
|
|
367 |
4 2 1 2 3 2 2 2 3 2 2 2 0 2
|
|
368 |
4 2 1 2 3 2 2 2 3 2 2 2 1 2
|
|
369 |
4 2 1 2 4 2 2 2 3 2 2 2 0 2
|
|
370 |
4 2 1 2 4 2 2 2 3 2 2 2 1 2
|
|
371 |
5 3 NULL NULL NULL NULL 2 2 3 2 2 2 0 2
|
|
372 |
5 3 NULL NULL NULL NULL 2 2 3 2 2 2 1 2
|
|
373 |
4 2 1 2 3 2 3 3 NULL NULL NULL NULL NULL NULL
|
|
374 |
4 2 1 2 4 2 3 3 NULL NULL NULL NULL NULL NULL
|
|
375 |
5 3 NULL NULL NULL NULL 3 3 NULL NULL NULL NULL NULL NULL
|
|
376 |
SELECT t1.a,t1.b
|
|
377 |
FROM t1;
|
|
378 |
a b
|
|
379 |
1 3
|
|
380 |
2 2
|
|
381 |
3 2
|
|
382 |
SELECT t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,
|
|
383 |
t5.a,t5.b,t6.a,t6.b,t7.a,t7.b,t8.a,t8.b
|
|
384 |
FROM t1
|
|
385 |
LEFT JOIN
|
|
386 |
(
|
|
387 |
t2
|
|
388 |
LEFT JOIN
|
|
389 |
(t3, t4)
|
|
390 |
ON t3.a=1 AND t2.b=t4.b,
|
|
391 |
t5
|
|
392 |
LEFT JOIN
|
|
393 |
(
|
|
394 |
(t6, t7)
|
|
395 |
LEFT JOIN
|
|
396 |
t8
|
|
397 |
ON t7.b=t8.b AND t6.b < 10
|
|
398 |
)
|
|
399 |
ON t6.b >= 2 AND t5.b=t7.b
|
|
400 |
)
|
|
401 |
ON (t3.b=2 OR t3.c IS NULL) AND (t6.b=2 OR t6.c IS NULL) AND
|
|
402 |
(t1.b=t5.b OR t3.c IS NULL OR t6.c IS NULL or t8.c IS NULL) AND
|
|
403 |
(t1.a != 2);
|
|
404 |
a b a b a b a b a b a b a b a b
|
|
405 |
1 3 3 3 NULL NULL NULL NULL 3 1 3 2 1 1 NULL NULL
|
|
406 |
1 3 3 3 NULL NULL NULL NULL 3 1 6 2 1 1 NULL NULL
|
|
407 |
1 3 3 3 NULL NULL NULL NULL 2 2 3 2 2 2 0 2
|
|
408 |
1 3 3 3 NULL NULL NULL NULL 2 2 3 2 2 2 1 2
|
|
409 |
1 3 3 3 NULL NULL NULL NULL 2 2 6 2 2 2 0 2
|
|
410 |
1 3 3 3 NULL NULL NULL NULL 2 2 6 2 2 2 1 2
|
|
411 |
1 3 3 3 NULL NULL NULL NULL 3 3 NULL NULL NULL NULL NULL NULL
|
|
412 |
1 3 4 2 1 2 3 2 3 1 3 2 1 1 NULL NULL
|
|
413 |
1 3 4 2 1 2 3 2 3 1 6 2 1 1 NULL NULL
|
|
414 |
1 3 4 2 1 2 3 2 3 3 NULL NULL NULL NULL NULL NULL
|
|
415 |
1 3 4 2 1 2 4 2 3 1 3 2 1 1 NULL NULL
|
|
416 |
1 3 4 2 1 2 4 2 3 1 6 2 1 1 NULL NULL
|
|
417 |
1 3 4 2 1 2 4 2 3 3 NULL NULL NULL NULL NULL NULL
|
|
418 |
1 3 5 3 NULL NULL NULL NULL 3 1 3 2 1 1 NULL NULL
|
|
419 |
1 3 5 3 NULL NULL NULL NULL 3 1 6 2 1 1 NULL NULL
|
|
420 |
1 3 5 3 NULL NULL NULL NULL 2 2 3 2 2 2 0 2
|
|
421 |
1 3 5 3 NULL NULL NULL NULL 2 2 3 2 2 2 1 2
|
|
422 |
1 3 5 3 NULL NULL NULL NULL 2 2 6 2 2 2 0 2
|
|
423 |
1 3 5 3 NULL NULL NULL NULL 2 2 6 2 2 2 1 2
|
|
424 |
1 3 5 3 NULL NULL NULL NULL 3 3 NULL NULL NULL NULL NULL NULL
|
|
425 |
2 2 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
|
426 |
3 2 3 3 NULL NULL NULL NULL 3 1 3 2 1 1 NULL NULL
|
|
427 |
3 2 3 3 NULL NULL NULL NULL 3 1 6 2 1 1 NULL NULL
|
|
428 |
3 2 3 3 NULL NULL NULL NULL 2 2 3 2 2 2 0 2
|
|
429 |
3 2 3 3 NULL NULL NULL NULL 2 2 3 2 2 2 1 2
|
|
430 |
3 2 3 3 NULL NULL NULL NULL 2 2 6 2 2 2 0 2
|
|
431 |
3 2 3 3 NULL NULL NULL NULL 2 2 6 2 2 2 1 2
|
|
432 |
3 2 3 3 NULL NULL NULL NULL 3 3 NULL NULL NULL NULL NULL NULL
|
|
433 |
3 2 4 2 1 2 3 2 3 1 3 2 1 1 NULL NULL
|
|
434 |
3 2 4 2 1 2 3 2 3 1 6 2 1 1 NULL NULL
|
|
435 |
3 2 4 2 1 2 3 2 2 2 3 2 2 2 0 2
|
|
436 |
3 2 4 2 1 2 3 2 2 2 3 2 2 2 1 2
|
|
437 |
3 2 4 2 1 2 3 2 2 2 6 2 2 2 0 2
|
|
438 |
3 2 4 2 1 2 3 2 2 2 6 2 2 2 1 2
|
|
439 |
3 2 4 2 1 2 3 2 3 3 NULL NULL NULL NULL NULL NULL
|
|
440 |
3 2 4 2 1 2 4 2 3 1 3 2 1 1 NULL NULL
|
|
441 |
3 2 4 2 1 2 4 2 3 1 6 2 1 1 NULL NULL
|
|
442 |
3 2 4 2 1 2 4 2 2 2 3 2 2 2 0 2
|
|
443 |
3 2 4 2 1 2 4 2 2 2 3 2 2 2 1 2
|
|
444 |
3 2 4 2 1 2 4 2 2 2 6 2 2 2 0 2
|
|
445 |
3 2 4 2 1 2 4 2 2 2 6 2 2 2 1 2
|
|
446 |
3 2 4 2 1 2 4 2 3 3 NULL NULL NULL NULL NULL NULL
|
|
447 |
3 2 5 3 NULL NULL NULL NULL 3 1 3 2 1 1 NULL NULL
|
|
448 |
3 2 5 3 NULL NULL NULL NULL 3 1 6 2 1 1 NULL NULL
|
|
449 |
3 2 5 3 NULL NULL NULL NULL 2 2 3 2 2 2 0 2
|
|
450 |
3 2 5 3 NULL NULL NULL NULL 2 2 3 2 2 2 1 2
|
|
451 |
3 2 5 3 NULL NULL NULL NULL 2 2 6 2 2 2 0 2
|
|
452 |
3 2 5 3 NULL NULL NULL NULL 2 2 6 2 2 2 1 2
|
|
453 |
3 2 5 3 NULL NULL NULL NULL 3 3 NULL NULL NULL NULL NULL NULL
|
|
454 |
SELECT t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,
|
|
455 |
t5.a,t5.b,t6.a,t6.b,t7.a,t7.b,t8.a,t8.b
|
|
456 |
FROM t1
|
|
457 |
LEFT JOIN
|
|
458 |
(
|
|
459 |
t2
|
|
460 |
LEFT JOIN
|
|
461 |
(t3, t4)
|
|
462 |
ON t3.a=1 AND t2.b=t4.b,
|
|
463 |
t5
|
|
464 |
LEFT JOIN
|
|
465 |
(
|
|
466 |
(t6, t7)
|
|
467 |
LEFT JOIN
|
|
468 |
t8
|
|
469 |
ON t7.b=t8.b AND t6.b < 10
|
|
470 |
)
|
|
471 |
ON t6.b >= 2 AND t5.b=t7.b
|
|
472 |
)
|
|
473 |
ON (t3.b=2 OR t3.c IS NULL) AND (t6.b=2 OR t6.c IS NULL) AND
|
|
474 |
(t1.b=t5.b OR t3.c IS NULL OR t6.c IS NULL or t8.c IS NULL) AND
|
|
475 |
(t1.a != 2)
|
|
476 |
WHERE (t2.a >= 4 OR t2.c IS NULL);
|
|
477 |
a b a b a b a b a b a b a b a b
|
|
478 |
1 3 4 2 1 2 3 2 3 1 3 2 1 1 NULL NULL
|
|
479 |
1 3 4 2 1 2 3 2 3 1 6 2 1 1 NULL NULL
|
|
480 |
1 3 4 2 1 2 3 2 3 3 NULL NULL NULL NULL NULL NULL
|
|
481 |
1 3 4 2 1 2 4 2 3 1 3 2 1 1 NULL NULL
|
|
482 |
1 3 4 2 1 2 4 2 3 1 6 2 1 1 NULL NULL
|
|
483 |
1 3 4 2 1 2 4 2 3 3 NULL NULL NULL NULL NULL NULL
|
|
484 |
1 3 5 3 NULL NULL NULL NULL 3 1 3 2 1 1 NULL NULL
|
|
485 |
1 3 5 3 NULL NULL NULL NULL 3 1 6 2 1 1 NULL NULL
|
|
486 |
1 3 5 3 NULL NULL NULL NULL 2 2 3 2 2 2 0 2
|
|
487 |
1 3 5 3 NULL NULL NULL NULL 2 2 3 2 2 2 1 2
|
|
488 |
1 3 5 3 NULL NULL NULL NULL 2 2 6 2 2 2 0 2
|
|
489 |
1 3 5 3 NULL NULL NULL NULL 2 2 6 2 2 2 1 2
|
|
490 |
1 3 5 3 NULL NULL NULL NULL 3 3 NULL NULL NULL NULL NULL NULL
|
|
491 |
2 2 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
|
492 |
3 2 4 2 1 2 3 2 3 1 3 2 1 1 NULL NULL
|
|
493 |
3 2 4 2 1 2 3 2 3 1 6 2 1 1 NULL NULL
|
|
494 |
3 2 4 2 1 2 3 2 2 2 3 2 2 2 0 2
|
|
495 |
3 2 4 2 1 2 3 2 2 2 3 2 2 2 1 2
|
|
496 |
3 2 4 2 1 2 3 2 2 2 6 2 2 2 0 2
|
|
497 |
3 2 4 2 1 2 3 2 2 2 6 2 2 2 1 2
|
|
498 |
3 2 4 2 1 2 3 2 3 3 NULL NULL NULL NULL NULL NULL
|
|
499 |
3 2 4 2 1 2 4 2 3 1 3 2 1 1 NULL NULL
|
|
500 |
3 2 4 2 1 2 4 2 3 1 6 2 1 1 NULL NULL
|
|
501 |
3 2 4 2 1 2 4 2 2 2 3 2 2 2 0 2
|
|
502 |
3 2 4 2 1 2 4 2 2 2 3 2 2 2 1 2
|
|
503 |
3 2 4 2 1 2 4 2 2 2 6 2 2 2 0 2
|
|
504 |
3 2 4 2 1 2 4 2 2 2 6 2 2 2 1 2
|
|
505 |
3 2 4 2 1 2 4 2 3 3 NULL NULL NULL NULL NULL NULL
|
|
506 |
3 2 5 3 NULL NULL NULL NULL 3 1 3 2 1 1 NULL NULL
|
|
507 |
3 2 5 3 NULL NULL NULL NULL 3 1 6 2 1 1 NULL NULL
|
|
508 |
3 2 5 3 NULL NULL NULL NULL 2 2 3 2 2 2 0 2
|
|
509 |
3 2 5 3 NULL NULL NULL NULL 2 2 3 2 2 2 1 2
|
|
510 |
3 2 5 3 NULL NULL NULL NULL 2 2 6 2 2 2 0 2
|
|
511 |
3 2 5 3 NULL NULL NULL NULL 2 2 6 2 2 2 1 2
|
|
512 |
3 2 5 3 NULL NULL NULL NULL 3 3 NULL NULL NULL NULL NULL NULL
|
|
513 |
SELECT t0.a,t0.b
|
|
514 |
FROM t0;
|
|
515 |
a b
|
|
516 |
1 1
|
|
517 |
1 2
|
|
518 |
2 2
|
|
519 |
EXPLAIN EXTENDED
|
|
520 |
SELECT t0.a,t0.b,t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,
|
|
521 |
t5.a,t5.b,t6.a,t6.b,t7.a,t7.b,t8.a,t8.b
|
|
522 |
FROM t0,t1
|
|
523 |
LEFT JOIN
|
|
524 |
(
|
|
525 |
t2
|
|
526 |
LEFT JOIN
|
|
527 |
(t3, t4)
|
|
528 |
ON t3.a=1 AND t2.b=t4.b,
|
|
529 |
t5
|
|
530 |
LEFT JOIN
|
|
531 |
(
|
|
532 |
(t6, t7)
|
|
533 |
LEFT JOIN
|
|
534 |
t8
|
|
535 |
ON t7.b=t8.b AND t6.b < 10
|
|
536 |
)
|
|
537 |
ON t6.b >= 2 AND t5.b=t7.b
|
|
538 |
)
|
|
539 |
ON (t3.b=2 OR t3.c IS NULL) AND (t6.b=2 OR t6.c IS NULL) AND
|
|
540 |
(t1.b=t5.b OR t3.c IS NULL OR t6.c IS NULL or t8.c IS NULL) AND
|
|
541 |
(t1.a != 2)
|
|
542 |
WHERE t0.a=1 AND
|
|
543 |
t0.b=t1.b AND
|
|
544 |
(t2.a >= 4 OR t2.c IS NULL);
|
|
545 |
id select_type table type possible_keys key key_len ref rows filtered Extra
|
|
546 |
1 SIMPLE t0 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
547 |
1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
|
|
548 |
1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
549 |
1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00
|
|
550 |
1 SIMPLE t4 ALL NULL NULL NULL NULL 2 100.00
|
|
551 |
1 SIMPLE t5 ALL NULL NULL NULL NULL 3 100.00
|
|
552 |
1 SIMPLE t7 ALL NULL NULL NULL NULL 2 100.00
|
|
553 |
1 SIMPLE t6 ALL NULL NULL NULL NULL 3 100.00
|
|
554 |
1 SIMPLE t8 ALL NULL NULL NULL NULL 2 100.00
|
|
555 |
Warnings:
|
|
556 |
Note 1003 select "test"."t0"."a" AS "a","test"."t0"."b" AS "b","test"."t1"."a" AS "a","test"."t1"."b" AS "b","test"."t2"."a" AS "a","test"."t2"."b" AS "b","test"."t3"."a" AS "a","test"."t3"."b" AS "b","test"."t4"."a" AS "a","test"."t4"."b" AS "b","test"."t5"."a" AS "a","test"."t5"."b" AS "b","test"."t6"."a" AS "a","test"."t6"."b" AS "b","test"."t7"."a" AS "a","test"."t7"."b" AS "b","test"."t8"."a" AS "a","test"."t8"."b" AS "b" from "test"."t0" join "test"."t1" left join ("test"."t2" left join ("test"."t3" join "test"."t4") on((("test"."t4"."b" = "test"."t2"."b") and ("test"."t3"."a" = 1))) join "test"."t5" left join ("test"."t6" join "test"."t7" left join "test"."t8" on((("test"."t8"."b" = "test"."t5"."b") and ("test"."t6"."b" < 10)))) on((("test"."t7"."b" = "test"."t5"."b") and ("test"."t6"."b" >= 2)))) on(((("test"."t3"."b" = 2) or isnull("test"."t3"."c")) and (("test"."t6"."b" = 2) or isnull("test"."t6"."c")) and (("test"."t5"."b" = "test"."t0"."b") or isnull("test"."t3"."c") or isnull("test"."t6"."c") or isnull("test"."t8"."c")) and ("test"."t1"."a" <> 2))) where (("test"."t1"."b" = "test"."t0"."b") and ("test"."t0"."a" = 1) and (("test"."t2"."a" >= 4) or isnull("test"."t2"."c")))
|
|
557 |
SELECT t0.a,t0.b,t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,
|
|
558 |
t5.a,t5.b,t6.a,t6.b,t7.a,t7.b,t8.a,t8.b
|
|
559 |
FROM t0,t1
|
|
560 |
LEFT JOIN
|
|
561 |
(
|
|
562 |
t2
|
|
563 |
LEFT JOIN
|
|
564 |
(t3, t4)
|
|
565 |
ON t3.a=1 AND t2.b=t4.b,
|
|
566 |
t5
|
|
567 |
LEFT JOIN
|
|
568 |
(
|
|
569 |
(t6, t7)
|
|
570 |
LEFT JOIN
|
|
571 |
t8
|
|
572 |
ON t7.b=t8.b AND t6.b < 10
|
|
573 |
)
|
|
574 |
ON t6.b >= 2 AND t5.b=t7.b
|
|
575 |
)
|
|
576 |
ON (t3.b=2 OR t3.c IS NULL) AND (t6.b=2 OR t6.c IS NULL) AND
|
|
577 |
(t1.b=t5.b OR t3.c IS NULL OR t6.c IS NULL or t8.c IS NULL) AND
|
|
578 |
(t1.a != 2)
|
|
579 |
WHERE t0.a=1 AND
|
|
580 |
t0.b=t1.b AND
|
|
581 |
(t2.a >= 4 OR t2.c IS NULL);
|
|
582 |
a b a b a b a b a b a b a b a b a b
|
|
583 |
1 2 2 2 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
|
584 |
1 2 3 2 4 2 1 2 3 2 3 1 3 2 1 1 NULL NULL
|
|
585 |
1 2 3 2 4 2 1 2 3 2 3 1 6 2 1 1 NULL NULL
|
|
586 |
1 2 3 2 4 2 1 2 3 2 2 2 3 2 2 2 0 2
|
|
587 |
1 2 3 2 4 2 1 2 3 2 2 2 3 2 2 2 1 2
|
|
588 |
1 2 3 2 4 2 1 2 3 2 2 2 6 2 2 2 0 2
|
|
589 |
1 2 3 2 4 2 1 2 3 2 2 2 6 2 2 2 1 2
|
|
590 |
1 2 3 2 4 2 1 2 3 2 3 3 NULL NULL NULL NULL NULL NULL
|
|
591 |
1 2 3 2 4 2 1 2 4 2 3 1 3 2 1 1 NULL NULL
|
|
592 |
1 2 3 2 4 2 1 2 4 2 3 1 6 2 1 1 NULL NULL
|
|
593 |
1 2 3 2 4 2 1 2 4 2 2 2 3 2 2 2 0 2
|
|
594 |
1 2 3 2 4 2 1 2 4 2 2 2 3 2 2 2 1 2
|
|
595 |
1 2 3 2 4 2 1 2 4 2 2 2 6 2 2 2 0 2
|
|
596 |
1 2 3 2 4 2 1 2 4 2 2 2 6 2 2 2 1 2
|
|
597 |
1 2 3 2 4 2 1 2 4 2 3 3 NULL NULL NULL NULL NULL NULL
|
|
598 |
1 2 3 2 5 3 NULL NULL NULL NULL 3 1 3 2 1 1 NULL NULL
|
|
599 |
1 2 3 2 5 3 NULL NULL NULL NULL 3 1 6 2 1 1 NULL NULL
|
|
600 |
1 2 3 2 5 3 NULL NULL NULL NULL 2 2 3 2 2 2 0 2
|
|
601 |
1 2 3 2 5 3 NULL NULL NULL NULL 2 2 3 2 2 2 1 2
|
|
602 |
1 2 3 2 5 3 NULL NULL NULL NULL 2 2 6 2 2 2 0 2
|
|
603 |
1 2 3 2 5 3 NULL NULL NULL NULL 2 2 6 2 2 2 1 2
|
|
604 |
1 2 3 2 5 3 NULL NULL NULL NULL 3 3 NULL NULL NULL NULL NULL NULL
|
|
605 |
EXPLAIN EXTENDED
|
|
606 |
SELECT t0.a,t0.b,t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,
|
|
607 |
t5.a,t5.b,t6.a,t6.b,t7.a,t7.b,t8.a,t8.b,t9.a,t9.b
|
|
608 |
FROM t0,t1
|
|
609 |
LEFT JOIN
|
|
610 |
(
|
|
611 |
t2
|
|
612 |
LEFT JOIN
|
|
613 |
(t3, t4)
|
|
614 |
ON t3.a=1 AND t2.b=t4.b,
|
|
615 |
t5
|
|
616 |
LEFT JOIN
|
|
617 |
(
|
|
618 |
(t6, t7)
|
|
619 |
LEFT JOIN
|
|
620 |
t8
|
|
621 |
ON t7.b=t8.b AND t6.b < 10
|
|
622 |
)
|
|
623 |
ON t6.b >= 2 AND t5.b=t7.b
|
|
624 |
)
|
|
625 |
ON (t3.b=2 OR t3.c IS NULL) AND (t6.b=2 OR t6.c IS NULL) AND
|
|
626 |
(t1.b=t5.b OR t3.c IS NULL OR t6.c IS NULL or t8.c IS NULL) AND
|
|
627 |
(t1.a != 2),
|
|
628 |
t9
|
|
629 |
WHERE t0.a=1 AND
|
|
630 |
t0.b=t1.b AND
|
|
631 |
(t2.a >= 4 OR t2.c IS NULL) AND
|
|
632 |
(t3.a < 5 OR t3.c IS NULL) AND
|
|
633 |
(t3.b=t4.b OR t3.c IS NULL OR t4.c IS NULL) AND
|
|
634 |
(t5.a >=2 OR t5.c IS NULL) AND
|
|
635 |
(t6.a >=4 OR t6.c IS NULL) AND
|
|
636 |
(t7.a <= 2 OR t7.c IS NULL) AND
|
|
637 |
(t8.a < 1 OR t8.c IS NULL) AND
|
|
638 |
(t8.b=t9.b OR t8.c IS NULL) AND
|
|
639 |
(t9.a=1);
|
|
640 |
id select_type table type possible_keys key key_len ref rows filtered Extra
|
|
641 |
1 SIMPLE t0 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
642 |
1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
|
|
643 |
1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
644 |
1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00 Using where
|
|
645 |
1 SIMPLE t4 ALL NULL NULL NULL NULL 2 100.00 Using where
|
|
646 |
1 SIMPLE t5 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
647 |
1 SIMPLE t7 ALL NULL NULL NULL NULL 2 100.00 Using where
|
|
648 |
1 SIMPLE t6 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
649 |
1 SIMPLE t8 ALL NULL NULL NULL NULL 2 100.00 Using where
|
|
650 |
1 SIMPLE t9 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
|
|
651 |
Warnings:
|
|
652 |
Note 1003 select "test"."t0"."a" AS "a","test"."t0"."b" AS "b","test"."t1"."a" AS "a","test"."t1"."b" AS "b","test"."t2"."a" AS "a","test"."t2"."b" AS "b","test"."t3"."a" AS "a","test"."t3"."b" AS "b","test"."t4"."a" AS "a","test"."t4"."b" AS "b","test"."t5"."a" AS "a","test"."t5"."b" AS "b","test"."t6"."a" AS "a","test"."t6"."b" AS "b","test"."t7"."a" AS "a","test"."t7"."b" AS "b","test"."t8"."a" AS "a","test"."t8"."b" AS "b","test"."t9"."a" AS "a","test"."t9"."b" AS "b" from "test"."t0" join "test"."t1" left join ("test"."t2" left join ("test"."t3" join "test"."t4") on((("test"."t4"."b" = "test"."t2"."b") and ("test"."t3"."a" = 1))) join "test"."t5" left join ("test"."t6" join "test"."t7" left join "test"."t8" on((("test"."t8"."b" = "test"."t5"."b") and ("test"."t6"."b" < 10)))) on((("test"."t7"."b" = "test"."t5"."b") and ("test"."t6"."b" >= 2)))) on(((("test"."t3"."b" = 2) or isnull("test"."t3"."c")) and (("test"."t6"."b" = 2) or isnull("test"."t6"."c")) and (("test"."t5"."b" = "test"."t0"."b") or isnull("test"."t3"."c") or isnull("test"."t6"."c") or isnull("test"."t8"."c")) and ("test"."t1"."a" <> 2))) join "test"."t9" where (("test"."t9"."a" = 1) and ("test"."t1"."b" = "test"."t0"."b") and ("test"."t0"."a" = 1) and (("test"."t2"."a" >= 4) or isnull("test"."t2"."c")) and (("test"."t3"."a" < 5) or isnull("test"."t3"."c")) and (("test"."t4"."b" = "test"."t3"."b") or isnull("test"."t3"."c") or isnull("test"."t4"."c")) and (("test"."t5"."a" >= 2) or isnull("test"."t5"."c")) and (("test"."t6"."a" >= 4) or isnull("test"."t6"."c")) and (("test"."t7"."a" <= 2) or isnull("test"."t7"."c")) and (("test"."t8"."a" < 1) or isnull("test"."t8"."c")) and (("test"."t9"."b" = "test"."t8"."b") or isnull("test"."t8"."c")))
|
|
653 |
SELECT t9.a,t9.b
|
|
654 |
FROM t9;
|
|
655 |
a b
|
|
656 |
1 1
|
|
657 |
1 2
|
|
658 |
3 3
|
|
659 |
SELECT t0.a,t0.b,t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,
|
|
660 |
t5.a,t5.b,t6.a,t6.b,t7.a,t7.b,t8.a,t8.b,t9.a,t9.b
|
|
661 |
FROM t0,t1
|
|
662 |
LEFT JOIN
|
|
663 |
(
|
|
664 |
t2
|
|
665 |
LEFT JOIN
|
|
666 |
(t3, t4)
|
|
667 |
ON t3.a=1 AND t2.b=t4.b,
|
|
668 |
t5
|
|
669 |
LEFT JOIN
|
|
670 |
(
|
|
671 |
(t6, t7)
|
|
672 |
LEFT JOIN
|
|
673 |
t8
|
|
674 |
ON t7.b=t8.b AND t6.b < 10
|
|
675 |
)
|
|
676 |
ON t6.b >= 2 AND t5.b=t7.b
|
|
677 |
)
|
|
678 |
ON (t3.b=2 OR t3.c IS NULL) AND (t6.b=2 OR t6.c IS NULL) AND
|
|
679 |
(t1.b=t5.b OR t3.c IS NULL OR t6.c IS NULL or t8.c IS NULL) AND
|
|
680 |
(t1.a != 2),
|
|
681 |
t9
|
|
682 |
WHERE t0.a=1 AND
|
|
683 |
t0.b=t1.b AND
|
|
684 |
(t2.a >= 4 OR t2.c IS NULL) AND
|
|
685 |
(t3.a < 5 OR t3.c IS NULL) AND
|
|
686 |
(t3.b=t4.b OR t3.c IS NULL OR t4.c IS NULL) AND
|
|
687 |
(t5.a >=2 OR t5.c IS NULL) AND
|
|
688 |
(t6.a >=4 OR t6.c IS NULL) AND
|
|
689 |
(t7.a <= 2 OR t7.c IS NULL) AND
|
|
690 |
(t8.a < 1 OR t8.c IS NULL) AND
|
|
691 |
(t8.b=t9.b OR t8.c IS NULL) AND
|
|
692 |
(t9.a=1);
|
|
693 |
a b a b a b a b a b a b a b a b a b a b
|
|
694 |
1 2 2 2 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1 1
|
|
695 |
1 2 3 2 4 2 1 2 3 2 3 1 6 2 1 1 NULL NULL 1 1
|
|
696 |
1 2 3 2 4 2 1 2 3 2 3 3 NULL NULL NULL NULL NULL NULL 1 1
|
|
697 |
1 2 3 2 4 2 1 2 4 2 3 1 6 2 1 1 NULL NULL 1 1
|
|
698 |
1 2 3 2 4 2 1 2 4 2 3 3 NULL NULL NULL NULL NULL NULL 1 1
|
|
699 |
1 2 3 2 5 3 NULL NULL NULL NULL 3 1 6 2 1 1 NULL NULL 1 1
|
|
700 |
1 2 3 2 5 3 NULL NULL NULL NULL 3 3 NULL NULL NULL NULL NULL NULL 1 1
|
|
701 |
1 2 2 2 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1 2
|
|
702 |
1 2 3 2 4 2 1 2 3 2 3 1 6 2 1 1 NULL NULL 1 2
|
|
703 |
1 2 3 2 4 2 1 2 3 2 2 2 6 2 2 2 0 2 1 2
|
|
704 |
1 2 3 2 4 2 1 2 3 2 3 3 NULL NULL NULL NULL NULL NULL 1 2
|
|
705 |
1 2 3 2 4 2 1 2 4 2 3 1 6 2 1 1 NULL NULL 1 2
|
|
706 |
1 2 3 2 4 2 1 2 4 2 2 2 6 2 2 2 0 2 1 2
|
|
707 |
1 2 3 2 4 2 1 2 4 2 3 3 NULL NULL NULL NULL NULL NULL 1 2
|
|
708 |
1 2 3 2 5 3 NULL NULL NULL NULL 3 1 6 2 1 1 NULL NULL 1 2
|
|
709 |
1 2 3 2 5 3 NULL NULL NULL NULL 2 2 6 2 2 2 0 2 1 2
|
|
710 |
1 2 3 2 5 3 NULL NULL NULL NULL 3 3 NULL NULL NULL NULL NULL NULL 1 2
|
|
711 |
SELECT t1.a,t1.b
|
|
712 |
FROM t1;
|
|
713 |
a b
|
|
714 |
1 3
|
|
715 |
2 2
|
|
716 |
3 2
|
|
717 |
SELECT t2.a,t2.b
|
|
718 |
FROM t2;
|
|
719 |
a b
|
|
720 |
3 3
|
|
721 |
4 2
|
|
722 |
5 3
|
|
723 |
SELECT t3.a,t3.b
|
|
724 |
FROM t3;
|
|
725 |
a b
|
|
726 |
1 2
|
|
727 |
2 2
|
|
728 |
SELECT t2.a,t2.b,t3.a,t3.b
|
|
729 |
FROM t2
|
|
730 |
LEFT JOIN
|
|
731 |
t3
|
|
732 |
ON t2.b=t3.b;
|
|
733 |
a b a b
|
|
734 |
3 3 NULL NULL
|
|
735 |
4 2 1 2
|
|
736 |
4 2 2 2
|
|
737 |
5 3 NULL NULL
|
|
738 |
SELECT t1.a,t1.b,t2.a,t2.b,t3.a,t3.b
|
|
739 |
FROM t1, t2
|
|
740 |
LEFT JOIN
|
|
741 |
t3
|
|
742 |
ON t2.b=t3.b
|
|
743 |
WHERE t1.a <= 2;
|
|
744 |
a b a b a b
|
|
745 |
1 3 3 3 NULL NULL
|
|
746 |
2 2 3 3 NULL NULL
|
|
747 |
1 3 4 2 1 2
|
|
748 |
1 3 4 2 2 2
|
|
749 |
2 2 4 2 1 2
|
|
750 |
2 2 4 2 2 2
|
|
751 |
1 3 5 3 NULL NULL
|
|
752 |
2 2 5 3 NULL NULL
|
|
753 |
SELECT t1.a,t1.b,t2.a,t2.b,t3.a,t3.b
|
|
754 |
FROM t1, t3
|
|
755 |
RIGHT JOIN
|
|
756 |
t2
|
|
757 |
ON t2.b=t3.b
|
|
758 |
WHERE t1.a <= 2;
|
|
759 |
a b a b a b
|
|
760 |
1 3 3 3 NULL NULL
|
|
761 |
2 2 3 3 NULL NULL
|
|
762 |
1 3 4 2 1 2
|
|
763 |
1 3 4 2 2 2
|
|
764 |
2 2 4 2 1 2
|
|
765 |
2 2 4 2 2 2
|
|
766 |
1 3 5 3 NULL NULL
|
|
767 |
2 2 5 3 NULL NULL
|
|
768 |
SELECT t3.a,t3.b,t4.a,t4.b
|
|
769 |
FROM t3,t4;
|
|
770 |
a b a b
|
|
771 |
1 2 3 2
|
|
772 |
2 2 3 2
|
|
773 |
1 2 4 2
|
|
774 |
2 2 4 2
|
|
775 |
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b
|
|
776 |
FROM t2
|
|
777 |
LEFT JOIN
|
|
778 |
(t3, t4)
|
|
779 |
ON t3.a=1 AND t2.b=t4.b;
|
|
780 |
a b a b a b
|
|
781 |
3 3 NULL NULL NULL NULL
|
|
782 |
4 2 1 2 3 2
|
|
783 |
4 2 1 2 4 2
|
|
784 |
5 3 NULL NULL NULL NULL
|
|
785 |
SELECT t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b
|
|
786 |
FROM t1, t2
|
|
787 |
LEFT JOIN
|
|
788 |
(t3, t4)
|
|
789 |
ON t3.a=1 AND t2.b=t4.b
|
|
790 |
WHERE t1.a <= 2;
|
|
791 |
a b a b a b a b
|
|
792 |
1 3 3 3 NULL NULL NULL NULL
|
|
793 |
2 2 3 3 NULL NULL NULL NULL
|
|
794 |
1 3 4 2 1 2 3 2
|
|
795 |
1 3 4 2 1 2 4 2
|
|
796 |
2 2 4 2 1 2 3 2
|
|
797 |
2 2 4 2 1 2 4 2
|
|
798 |
1 3 5 3 NULL NULL NULL NULL
|
|
799 |
2 2 5 3 NULL NULL NULL NULL
|
|
800 |
SELECT t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b
|
|
801 |
FROM t1, (t3, t4)
|
|
802 |
RIGHT JOIN
|
|
803 |
t2
|
|
804 |
ON t3.a=1 AND t2.b=t4.b
|
|
805 |
WHERE t1.a <= 2;
|
|
806 |
a b a b a b a b
|
|
807 |
1 3 3 3 NULL NULL NULL NULL
|
|
808 |
2 2 3 3 NULL NULL NULL NULL
|
|
809 |
1 3 4 2 1 2 3 2
|
|
810 |
1 3 4 2 1 2 4 2
|
|
811 |
2 2 4 2 1 2 3 2
|
|
812 |
2 2 4 2 1 2 4 2
|
|
813 |
1 3 5 3 NULL NULL NULL NULL
|
|
814 |
2 2 5 3 NULL NULL NULL NULL
|
|
815 |
SELECT t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b
|
|
816 |
FROM t1, (t3, t4)
|
|
817 |
RIGHT JOIN
|
|
818 |
t2
|
|
819 |
ON t3.a=1 AND t2.b=t4.b
|
|
820 |
WHERE t1.a <= 2;
|
|
821 |
a b a b a b a b
|
|
822 |
1 3 3 3 NULL NULL NULL NULL
|
|
823 |
2 2 3 3 NULL NULL NULL NULL
|
|
824 |
1 3 4 2 1 2 3 2
|
|
825 |
1 3 4 2 1 2 4 2
|
|
826 |
2 2 4 2 1 2 3 2
|
|
827 |
2 2 4 2 1 2 4 2
|
|
828 |
1 3 5 3 NULL NULL NULL NULL
|
|
829 |
2 2 5 3 NULL NULL NULL NULL
|
|
830 |
EXPLAIN EXTENDED
|
|
831 |
SELECT t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b
|
|
832 |
FROM t1, (t3, t4)
|
|
833 |
RIGHT JOIN
|
|
834 |
t2
|
|
835 |
ON t3.a=1 AND t2.b=t4.b
|
|
836 |
WHERE t1.a <= 2;
|
|
837 |
id select_type table type possible_keys key key_len ref rows filtered Extra
|
|
838 |
1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
839 |
1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using join buffer
|
|
840 |
1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00
|
|
841 |
1 SIMPLE t4 ALL NULL NULL NULL NULL 2 100.00
|
|
842 |
Warnings:
|
|
843 |
Note 1003 select "test"."t1"."a" AS "a","test"."t1"."b" AS "b","test"."t2"."a" AS "a","test"."t2"."b" AS "b","test"."t3"."a" AS "a","test"."t3"."b" AS "b","test"."t4"."a" AS "a","test"."t4"."b" AS "b" from "test"."t1" join "test"."t2" left join ("test"."t3" join "test"."t4") on((("test"."t4"."b" = "test"."t2"."b") and ("test"."t3"."a" = 1))) where ("test"."t1"."a" <= 2)
|
|
844 |
CREATE INDEX idx_b ON t2(b);
|
|
845 |
EXPLAIN EXTENDED
|
|
846 |
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b
|
|
847 |
FROM (t3,t4)
|
|
848 |
LEFT JOIN
|
|
849 |
(t1,t2)
|
|
850 |
ON t3.a=1 AND t3.b=t2.b AND t2.b=t4.b;
|
|
851 |
id select_type table type possible_keys key key_len ref rows filtered Extra
|
|
852 |
1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00
|
|
853 |
1 SIMPLE t4 ALL NULL NULL NULL NULL 2 100.00 Using join buffer
|
|
854 |
1 SIMPLE t2 ref idx_b idx_b 5 test.t3.b 2 100.00
|
|
855 |
1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00
|
|
856 |
Warnings:
|
|
857 |
Note 1003 select "test"."t2"."a" AS "a","test"."t2"."b" AS "b","test"."t3"."a" AS "a","test"."t3"."b" AS "b","test"."t4"."a" AS "a","test"."t4"."b" AS "b" from "test"."t3" join "test"."t4" left join ("test"."t1" join "test"."t2") on((("test"."t3"."a" = 1) and ("test"."t3"."b" = "test"."t2"."b") and ("test"."t2"."b" = "test"."t4"."b"))) where 1
|
|
858 |
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b
|
|
859 |
FROM (t3,t4)
|
|
860 |
LEFT JOIN
|
|
861 |
(t1,t2)
|
|
862 |
ON t3.a=1 AND t3.b=t2.b AND t2.b=t4.b;
|
|
863 |
a b a b a b
|
|
864 |
4 2 1 2 3 2
|
|
865 |
4 2 1 2 3 2
|
|
866 |
4 2 1 2 3 2
|
|
867 |
NULL NULL 2 2 3 2
|
|
868 |
4 2 1 2 4 2
|
|
869 |
4 2 1 2 4 2
|
|
870 |
4 2 1 2 4 2
|
|
871 |
NULL NULL 2 2 4 2
|
|
872 |
EXPLAIN EXTENDED
|
|
873 |
SELECT t0.a,t0.b,t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,
|
|
874 |
t5.a,t5.b,t6.a,t6.b,t7.a,t7.b,t8.a,t8.b,t9.a,t9.b
|
|
875 |
FROM t0,t1
|
|
876 |
LEFT JOIN
|
|
877 |
(
|
|
878 |
t2
|
|
879 |
LEFT JOIN
|
|
880 |
(t3, t4)
|
|
881 |
ON t3.a=1 AND t2.b=t4.b,
|
|
882 |
t5
|
|
883 |
LEFT JOIN
|
|
884 |
(
|
|
885 |
(t6, t7)
|
|
886 |
LEFT JOIN
|
|
887 |
t8
|
|
888 |
ON t7.b=t8.b AND t6.b < 10
|
|
889 |
)
|
|
890 |
ON t6.b >= 2 AND t5.b=t7.b
|
|
891 |
)
|
|
892 |
ON (t3.b=2 OR t3.c IS NULL) AND (t6.b=2 OR t6.c IS NULL) AND
|
|
893 |
(t1.b=t5.b OR t3.c IS NULL OR t6.c IS NULL or t8.c IS NULL) AND
|
|
894 |
(t1.a != 2),
|
|
895 |
t9
|
|
896 |
WHERE t0.a=1 AND
|
|
897 |
t0.b=t1.b AND
|
|
898 |
(t2.a >= 4 OR t2.c IS NULL) AND
|
|
899 |
(t3.a < 5 OR t3.c IS NULL) AND
|
|
900 |
(t3.b=t4.b OR t3.c IS NULL OR t4.c IS NULL) AND
|
|
901 |
(t5.a >=2 OR t5.c IS NULL) AND
|
|
902 |
(t6.a >=4 OR t6.c IS NULL) AND
|
|
903 |
(t7.a <= 2 OR t7.c IS NULL) AND
|
|
904 |
(t8.a < 1 OR t8.c IS NULL) AND
|
|
905 |
(t8.b=t9.b OR t8.c IS NULL) AND
|
|
906 |
(t9.a=1);
|
|
907 |
id select_type table type possible_keys key key_len ref rows filtered Extra
|
|
908 |
1 SIMPLE t0 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
909 |
1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
|
|
910 |
1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
911 |
1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00 Using where
|
|
912 |
1 SIMPLE t4 ALL NULL NULL NULL NULL 2 100.00 Using where
|
|
913 |
1 SIMPLE t5 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
914 |
1 SIMPLE t7 ALL NULL NULL NULL NULL 2 100.00 Using where
|
|
915 |
1 SIMPLE t6 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
916 |
1 SIMPLE t8 ALL NULL NULL NULL NULL 2 100.00 Using where
|
|
917 |
1 SIMPLE t9 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
|
|
918 |
Warnings:
|
|
919 |
Note 1003 select "test"."t0"."a" AS "a","test"."t0"."b" AS "b","test"."t1"."a" AS "a","test"."t1"."b" AS "b","test"."t2"."a" AS "a","test"."t2"."b" AS "b","test"."t3"."a" AS "a","test"."t3"."b" AS "b","test"."t4"."a" AS "a","test"."t4"."b" AS "b","test"."t5"."a" AS "a","test"."t5"."b" AS "b","test"."t6"."a" AS "a","test"."t6"."b" AS "b","test"."t7"."a" AS "a","test"."t7"."b" AS "b","test"."t8"."a" AS "a","test"."t8"."b" AS "b","test"."t9"."a" AS "a","test"."t9"."b" AS "b" from "test"."t0" join "test"."t1" left join ("test"."t2" left join ("test"."t3" join "test"."t4") on((("test"."t4"."b" = "test"."t2"."b") and ("test"."t3"."a" = 1))) join "test"."t5" left join ("test"."t6" join "test"."t7" left join "test"."t8" on((("test"."t8"."b" = "test"."t5"."b") and ("test"."t6"."b" < 10)))) on((("test"."t7"."b" = "test"."t5"."b") and ("test"."t6"."b" >= 2)))) on(((("test"."t3"."b" = 2) or isnull("test"."t3"."c")) and (("test"."t6"."b" = 2) or isnull("test"."t6"."c")) and (("test"."t5"."b" = "test"."t0"."b") or isnull("test"."t3"."c") or isnull("test"."t6"."c") or isnull("test"."t8"."c")) and ("test"."t1"."a" <> 2))) join "test"."t9" where (("test"."t9"."a" = 1) and ("test"."t1"."b" = "test"."t0"."b") and ("test"."t0"."a" = 1) and (("test"."t2"."a" >= 4) or isnull("test"."t2"."c")) and (("test"."t3"."a" < 5) or isnull("test"."t3"."c")) and (("test"."t4"."b" = "test"."t3"."b") or isnull("test"."t3"."c") or isnull("test"."t4"."c")) and (("test"."t5"."a" >= 2) or isnull("test"."t5"."c")) and (("test"."t6"."a" >= 4) or isnull("test"."t6"."c")) and (("test"."t7"."a" <= 2) or isnull("test"."t7"."c")) and (("test"."t8"."a" < 1) or isnull("test"."t8"."c")) and (("test"."t9"."b" = "test"."t8"."b") or isnull("test"."t8"."c")))
|
|
920 |
CREATE INDEX idx_b ON t4(b);
|
|
921 |
CREATE INDEX idx_b ON t5(b);
|
|
922 |
EXPLAIN EXTENDED
|
|
923 |
SELECT t0.a,t0.b,t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,
|
|
924 |
t5.a,t5.b,t6.a,t6.b,t7.a,t7.b,t8.a,t8.b,t9.a,t9.b
|
|
925 |
FROM t0,t1
|
|
926 |
LEFT JOIN
|
|
927 |
(
|
|
928 |
t2
|
|
929 |
LEFT JOIN
|
|
930 |
(t3, t4)
|
|
931 |
ON t3.a=1 AND t2.b=t4.b,
|
|
932 |
t5
|
|
933 |
LEFT JOIN
|
|
934 |
(
|
|
935 |
(t6, t7)
|
|
936 |
LEFT JOIN
|
|
937 |
t8
|
|
938 |
ON t7.b=t8.b AND t6.b < 10
|
|
939 |
)
|
|
940 |
ON t6.b >= 2 AND t5.b=t7.b
|
|
941 |
)
|
|
942 |
ON (t3.b=2 OR t3.c IS NULL) AND (t6.b=2 OR t6.c IS NULL) AND
|
|
943 |
(t1.b=t5.b OR t3.c IS NULL OR t6.c IS NULL or t8.c IS NULL) AND
|
|
944 |
(t1.a != 2),
|
|
945 |
t9
|
|
946 |
WHERE t0.a=1 AND
|
|
947 |
t0.b=t1.b AND
|
|
948 |
(t2.a >= 4 OR t2.c IS NULL) AND
|
|
949 |
(t3.a < 5 OR t3.c IS NULL) AND
|
|
950 |
(t3.b=t4.b OR t3.c IS NULL OR t4.c IS NULL) AND
|
|
951 |
(t5.a >=2 OR t5.c IS NULL) AND
|
|
952 |
(t6.a >=4 OR t6.c IS NULL) AND
|
|
953 |
(t7.a <= 2 OR t7.c IS NULL) AND
|
|
954 |
(t8.a < 1 OR t8.c IS NULL) AND
|
|
955 |
(t8.b=t9.b OR t8.c IS NULL) AND
|
|
956 |
(t9.a=1);
|
|
957 |
id select_type table type possible_keys key key_len ref rows filtered Extra
|
|
958 |
1 SIMPLE t0 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
959 |
1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
|
|
960 |
1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
961 |
1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00 Using where
|
|
962 |
1 SIMPLE t4 ref idx_b idx_b 5 test.t2.b 2 100.00 Using where
|
|
963 |
1 SIMPLE t5 ALL idx_b NULL NULL NULL 3 100.00 Using where
|
|
964 |
1 SIMPLE t7 ALL NULL NULL NULL NULL 2 100.00 Using where
|
|
965 |
1 SIMPLE t6 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
966 |
1 SIMPLE t8 ALL NULL NULL NULL NULL 2 100.00 Using where
|
|
967 |
1 SIMPLE t9 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
|
|
968 |
Warnings:
|
|
969 |
Note 1003 select "test"."t0"."a" AS "a","test"."t0"."b" AS "b","test"."t1"."a" AS "a","test"."t1"."b" AS "b","test"."t2"."a" AS "a","test"."t2"."b" AS "b","test"."t3"."a" AS "a","test"."t3"."b" AS "b","test"."t4"."a" AS "a","test"."t4"."b" AS "b","test"."t5"."a" AS "a","test"."t5"."b" AS "b","test"."t6"."a" AS "a","test"."t6"."b" AS "b","test"."t7"."a" AS "a","test"."t7"."b" AS "b","test"."t8"."a" AS "a","test"."t8"."b" AS "b","test"."t9"."a" AS "a","test"."t9"."b" AS "b" from "test"."t0" join "test"."t1" left join ("test"."t2" left join ("test"."t3" join "test"."t4") on((("test"."t4"."b" = "test"."t2"."b") and ("test"."t3"."a" = 1))) join "test"."t5" left join ("test"."t6" join "test"."t7" left join "test"."t8" on((("test"."t8"."b" = "test"."t5"."b") and ("test"."t6"."b" < 10)))) on((("test"."t7"."b" = "test"."t5"."b") and ("test"."t6"."b" >= 2)))) on(((("test"."t3"."b" = 2) or isnull("test"."t3"."c")) and (("test"."t6"."b" = 2) or isnull("test"."t6"."c")) and (("test"."t5"."b" = "test"."t0"."b") or isnull("test"."t3"."c") or isnull("test"."t6"."c") or isnull("test"."t8"."c")) and ("test"."t1"."a" <> 2))) join "test"."t9" where (("test"."t9"."a" = 1) and ("test"."t1"."b" = "test"."t0"."b") and ("test"."t0"."a" = 1) and (("test"."t2"."a" >= 4) or isnull("test"."t2"."c")) and (("test"."t3"."a" < 5) or isnull("test"."t3"."c")) and (("test"."t4"."b" = "test"."t3"."b") or isnull("test"."t3"."c") or isnull("test"."t4"."c")) and (("test"."t5"."a" >= 2) or isnull("test"."t5"."c")) and (("test"."t6"."a" >= 4) or isnull("test"."t6"."c")) and (("test"."t7"."a" <= 2) or isnull("test"."t7"."c")) and (("test"."t8"."a" < 1) or isnull("test"."t8"."c")) and (("test"."t9"."b" = "test"."t8"."b") or isnull("test"."t8"."c")))
|
|
970 |
CREATE INDEX idx_b ON t8(b);
|
|
971 |
EXPLAIN EXTENDED
|
|
972 |
SELECT t0.a,t0.b,t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,
|
|
973 |
t5.a,t5.b,t6.a,t6.b,t7.a,t7.b,t8.a,t8.b,t9.a,t9.b
|
|
974 |
FROM t0,t1
|
|
975 |
LEFT JOIN
|
|
976 |
(
|
|
977 |
t2
|
|
978 |
LEFT JOIN
|
|
979 |
(t3, t4)
|
|
980 |
ON t3.a=1 AND t2.b=t4.b,
|
|
981 |
t5
|
|
982 |
LEFT JOIN
|
|
983 |
(
|
|
984 |
(t6, t7)
|
|
985 |
LEFT JOIN
|
|
986 |
t8
|
|
987 |
ON t7.b=t8.b AND t6.b < 10
|
|
988 |
)
|
|
989 |
ON t6.b >= 2 AND t5.b=t7.b
|
|
990 |
)
|
|
991 |
ON (t3.b=2 OR t3.c IS NULL) AND (t6.b=2 OR t6.c IS NULL) AND
|
|
992 |
(t1.b=t5.b OR t3.c IS NULL OR t6.c IS NULL or t8.c IS NULL) AND
|
|
993 |
(t1.a != 2),
|
|
994 |
t9
|
|
995 |
WHERE t0.a=1 AND
|
|
996 |
t0.b=t1.b AND
|
|
997 |
(t2.a >= 4 OR t2.c IS NULL) AND
|
|
998 |
(t3.a < 5 OR t3.c IS NULL) AND
|
|
999 |
(t3.b=t4.b OR t3.c IS NULL OR t4.c IS NULL) AND
|
|
1000 |
(t5.a >=2 OR t5.c IS NULL) AND
|
|
1001 |
(t6.a >=4 OR t6.c IS NULL) AND
|
|
1002 |
(t7.a <= 2 OR t7.c IS NULL) AND
|
|
1003 |
(t8.a < 1 OR t8.c IS NULL) AND
|
|
1004 |
(t8.b=t9.b OR t8.c IS NULL) AND
|
|
1005 |
(t9.a=1);
|
|
1006 |
id select_type table type possible_keys key key_len ref rows filtered Extra
|
|
1007 |
1 SIMPLE t0 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
1008 |
1 SIMPLE t1 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
|
|
1009 |
1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
1010 |
1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00 Using where
|
|
1011 |
1 SIMPLE t4 ref idx_b idx_b 5 test.t2.b 2 100.00 Using where
|
|
1012 |
1 SIMPLE t5 ALL idx_b NULL NULL NULL 3 100.00 Using where
|
|
1013 |
1 SIMPLE t7 ALL NULL NULL NULL NULL 2 100.00 Using where
|
|
1014 |
1 SIMPLE t6 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
1015 |
1 SIMPLE t8 ref idx_b idx_b 5 test.t5.b 2 100.00 Using where
|
|
1016 |
1 SIMPLE t9 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
|
|
1017 |
Warnings:
|
|
1018 |
Note 1003 select "test"."t0"."a" AS "a","test"."t0"."b" AS "b","test"."t1"."a" AS "a","test"."t1"."b" AS "b","test"."t2"."a" AS "a","test"."t2"."b" AS "b","test"."t3"."a" AS "a","test"."t3"."b" AS "b","test"."t4"."a" AS "a","test"."t4"."b" AS "b","test"."t5"."a" AS "a","test"."t5"."b" AS "b","test"."t6"."a" AS "a","test"."t6"."b" AS "b","test"."t7"."a" AS "a","test"."t7"."b" AS "b","test"."t8"."a" AS "a","test"."t8"."b" AS "b","test"."t9"."a" AS "a","test"."t9"."b" AS "b" from "test"."t0" join "test"."t1" left join ("test"."t2" left join ("test"."t3" join "test"."t4") on((("test"."t4"."b" = "test"."t2"."b") and ("test"."t3"."a" = 1))) join "test"."t5" left join ("test"."t6" join "test"."t7" left join "test"."t8" on((("test"."t8"."b" = "test"."t5"."b") and ("test"."t6"."b" < 10)))) on((("test"."t7"."b" = "test"."t5"."b") and ("test"."t6"."b" >= 2)))) on(((("test"."t3"."b" = 2) or isnull("test"."t3"."c")) and (("test"."t6"."b" = 2) or isnull("test"."t6"."c")) and (("test"."t5"."b" = "test"."t0"."b") or isnull("test"."t3"."c") or isnull("test"."t6"."c") or isnull("test"."t8"."c")) and ("test"."t1"."a" <> 2))) join "test"."t9" where (("test"."t9"."a" = 1) and ("test"."t1"."b" = "test"."t0"."b") and ("test"."t0"."a" = 1) and (("test"."t2"."a" >= 4) or isnull("test"."t2"."c")) and (("test"."t3"."a" < 5) or isnull("test"."t3"."c")) and (("test"."t4"."b" = "test"."t3"."b") or isnull("test"."t3"."c") or isnull("test"."t4"."c")) and (("test"."t5"."a" >= 2) or isnull("test"."t5"."c")) and (("test"."t6"."a" >= 4) or isnull("test"."t6"."c")) and (("test"."t7"."a" <= 2) or isnull("test"."t7"."c")) and (("test"."t8"."a" < 1) or isnull("test"."t8"."c")) and (("test"."t9"."b" = "test"."t8"."b") or isnull("test"."t8"."c")))
|
|
1019 |
CREATE INDEX idx_b ON t1(b);
|
|
1020 |
CREATE INDEX idx_a ON t0(a);
|
|
1021 |
EXPLAIN EXTENDED
|
|
1022 |
SELECT t0.a,t0.b,t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,
|
|
1023 |
t5.a,t5.b,t6.a,t6.b,t7.a,t7.b,t8.a,t8.b,t9.a,t9.b
|
|
1024 |
FROM t0,t1
|
|
1025 |
LEFT JOIN
|
|
1026 |
(
|
|
1027 |
t2
|
|
1028 |
LEFT JOIN
|
|
1029 |
(t3, t4)
|
|
1030 |
ON t3.a=1 AND t2.b=t4.b,
|
|
1031 |
t5
|
|
1032 |
LEFT JOIN
|
|
1033 |
(
|
|
1034 |
(t6, t7)
|
|
1035 |
LEFT JOIN
|
|
1036 |
t8
|
|
1037 |
ON t7.b=t8.b AND t6.b < 10
|
|
1038 |
)
|
|
1039 |
ON t6.b >= 2 AND t5.b=t7.b
|
|
1040 |
)
|
|
1041 |
ON (t3.b=2 OR t3.c IS NULL) AND (t6.b=2 OR t6.c IS NULL) AND
|
|
1042 |
(t1.b=t5.b OR t3.c IS NULL OR t6.c IS NULL or t8.c IS NULL) AND
|
|
1043 |
(t1.a != 2),
|
|
1044 |
t9
|
|
1045 |
WHERE t0.a=1 AND
|
|
1046 |
t0.b=t1.b AND
|
|
1047 |
(t2.a >= 4 OR t2.c IS NULL) AND
|
|
1048 |
(t3.a < 5 OR t3.c IS NULL) AND
|
|
1049 |
(t3.b=t4.b OR t3.c IS NULL OR t4.c IS NULL) AND
|
|
1050 |
(t5.a >=2 OR t5.c IS NULL) AND
|
|
1051 |
(t6.a >=4 OR t6.c IS NULL) AND
|
|
1052 |
(t7.a <= 2 OR t7.c IS NULL) AND
|
|
1053 |
(t8.a < 1 OR t8.c IS NULL) AND
|
|
1054 |
(t8.b=t9.b OR t8.c IS NULL) AND
|
|
1055 |
(t9.a=1);
|
|
1056 |
id select_type table type possible_keys key key_len ref rows filtered Extra
|
|
1057 |
1 SIMPLE t0 ref idx_a idx_a 5 const 1 100.00
|
|
1058 |
1 SIMPLE t1 ref idx_b idx_b 5 test.t0.b 2 100.00
|
|
1059 |
1 SIMPLE t2 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
1060 |
1 SIMPLE t3 ALL NULL NULL NULL NULL 2 100.00 Using where
|
|
1061 |
1 SIMPLE t4 ref idx_b idx_b 5 test.t2.b 2 100.00 Using where
|
|
1062 |
1 SIMPLE t5 ALL idx_b NULL NULL NULL 3 100.00 Using where
|
|
1063 |
1 SIMPLE t7 ALL NULL NULL NULL NULL 2 100.00 Using where
|
|
1064 |
1 SIMPLE t6 ALL NULL NULL NULL NULL 3 100.00 Using where
|
|
1065 |
1 SIMPLE t8 ref idx_b idx_b 5 test.t5.b 2 100.00 Using where
|
|
1066 |
1 SIMPLE t9 ALL NULL NULL NULL NULL 3 100.00 Using where; Using join buffer
|
|
1067 |
Warnings:
|
|
1068 |
Note 1003 select "test"."t0"."a" AS "a","test"."t0"."b" AS "b","test"."t1"."a" AS "a","test"."t1"."b" AS "b","test"."t2"."a" AS "a","test"."t2"."b" AS "b","test"."t3"."a" AS "a","test"."t3"."b" AS "b","test"."t4"."a" AS "a","test"."t4"."b" AS "b","test"."t5"."a" AS "a","test"."t5"."b" AS "b","test"."t6"."a" AS "a","test"."t6"."b" AS "b","test"."t7"."a" AS "a","test"."t7"."b" AS "b","test"."t8"."a" AS "a","test"."t8"."b" AS "b","test"."t9"."a" AS "a","test"."t9"."b" AS "b" from "test"."t0" join "test"."t1" left join ("test"."t2" left join ("test"."t3" join "test"."t4") on((("test"."t4"."b" = "test"."t2"."b") and ("test"."t3"."a" = 1))) join "test"."t5" left join ("test"."t6" join "test"."t7" left join "test"."t8" on((("test"."t8"."b" = "test"."t5"."b") and ("test"."t6"."b" < 10)))) on((("test"."t7"."b" = "test"."t5"."b") and ("test"."t6"."b" >= 2)))) on(((("test"."t3"."b" = 2) or isnull("test"."t3"."c")) and (("test"."t6"."b" = 2) or isnull("test"."t6"."c")) and (("test"."t5"."b" = "test"."t0"."b") or isnull("test"."t3"."c") or isnull("test"."t6"."c") or isnull("test"."t8"."c")) and ("test"."t1"."a" <> 2))) join "test"."t9" where (("test"."t9"."a" = 1) and ("test"."t1"."b" = "test"."t0"."b") and ("test"."t0"."a" = 1) and (("test"."t2"."a" >= 4) or isnull("test"."t2"."c")) and (("test"."t3"."a" < 5) or isnull("test"."t3"."c")) and (("test"."t4"."b" = "test"."t3"."b") or isnull("test"."t3"."c") or isnull("test"."t4"."c")) and (("test"."t5"."a" >= 2) or isnull("test"."t5"."c")) and (("test"."t6"."a" >= 4) or isnull("test"."t6"."c")) and (("test"."t7"."a" <= 2) or isnull("test"."t7"."c")) and (("test"."t8"."a" < 1) or isnull("test"."t8"."c")) and (("test"."t9"."b" = "test"."t8"."b") or isnull("test"."t8"."c")))
|
|
1069 |
SELECT t0.a,t0.b,t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,
|
|
1070 |
t5.a,t5.b,t6.a,t6.b,t7.a,t7.b,t8.a,t8.b,t9.a,t9.b
|
|
1071 |
FROM t0,t1
|
|
1072 |
LEFT JOIN
|
|
1073 |
(
|
|
1074 |
t2
|
|
1075 |
LEFT JOIN
|
|
1076 |
(t3, t4)
|
|
1077 |
ON t3.a=1 AND t2.b=t4.b,
|
|
1078 |
t5
|
|
1079 |
LEFT JOIN
|
|
1080 |
(
|
|
1081 |
(t6, t7)
|
|
1082 |
LEFT JOIN
|
|
1083 |
t8
|
|
1084 |
ON t7.b=t8.b AND t6.b < 10
|
|
1085 |
)
|
|
1086 |
ON t6.b >= 2 AND t5.b=t7.b
|
|
1087 |
)
|
|
1088 |
ON (t3.b=2 OR t3.c IS NULL) AND (t6.b=2 OR t6.c IS NULL) AND
|
|
1089 |
(t1.b=t5.b OR t3.c IS NULL OR t6.c IS NULL or t8.c IS NULL) AND
|
|
1090 |
(t1.a != 2),
|
|
1091 |
t9
|
|
1092 |
WHERE t0.a=1 AND
|
|
1093 |
t0.b=t1.b AND
|
|
1094 |
(t2.a >= 4 OR t2.c IS NULL) AND
|
|
1095 |
(t3.a < 5 OR t3.c IS NULL) AND
|
|
1096 |
(t3.b=t4.b OR t3.c IS NULL OR t4.c IS NULL) AND
|
|
1097 |
(t5.a >=2 OR t5.c IS NULL) AND
|
|
1098 |
(t6.a >=4 OR t6.c IS NULL) AND
|
|
1099 |
(t7.a <= 2 OR t7.c IS NULL) AND
|
|
1100 |
(t8.a < 1 OR t8.c IS NULL) AND
|
|
1101 |
(t8.b=t9.b OR t8.c IS NULL) AND
|
|
1102 |
(t9.a=1);
|
|
1103 |
a b a b a b a b a b a b a b a b a b a b
|
|
1104 |
1 2 2 2 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1 1
|
|
1105 |
1 2 3 2 4 2 1 2 3 2 3 1 6 2 1 1 NULL NULL 1 1
|
|
1106 |
1 2 3 2 4 2 1 2 3 2 3 3 NULL NULL NULL NULL NULL NULL 1 1
|
|
1107 |
1 2 3 2 4 2 1 2 4 2 3 1 6 2 1 1 NULL NULL 1 1
|
|
1108 |
1 2 3 2 4 2 1 2 4 2 3 3 NULL NULL NULL NULL NULL NULL 1 1
|
|
1109 |
1 2 3 2 5 3 NULL NULL NULL NULL 3 1 6 2 1 1 NULL NULL 1 1
|
|
1110 |
1 2 3 2 5 3 NULL NULL NULL NULL 3 3 NULL NULL NULL NULL NULL NULL 1 1
|
|
1111 |
1 2 2 2 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1 2
|
|
1112 |
1 2 3 2 4 2 1 2 3 2 3 1 6 2 1 1 NULL NULL 1 2
|
|
1113 |
1 2 3 2 4 2 1 2 3 2 2 2 6 2 2 2 0 2 1 2
|
|
1114 |
1 2 3 2 4 2 1 2 3 2 3 3 NULL NULL NULL NULL NULL NULL 1 2
|
|
1115 |
1 2 3 2 4 2 1 2 4 2 3 1 6 2 1 1 NULL NULL 1 2
|
|
1116 |
1 2 3 2 4 2 1 2 4 2 2 2 6 2 2 2 0 2 1 2
|
|
1117 |
1 2 3 2 4 2 1 2 4 2 3 3 NULL NULL NULL NULL NULL NULL 1 2
|
|
1118 |
1 2 3 2 5 3 NULL NULL NULL NULL 3 1 6 2 1 1 NULL NULL 1 2
|
|
1119 |
1 2 3 2 5 3 NULL NULL NULL NULL 2 2 6 2 2 2 0 2 1 2
|
|
1120 |
1 2 3 2 5 3 NULL NULL NULL NULL 3 3 NULL NULL NULL NULL NULL NULL 1 2
|
|
1121 |
SELECT t2.a,t2.b
|
|
1122 |
FROM t2;
|
|
1123 |
a b
|
|
1124 |
3 3
|
|
1125 |
4 2
|
|
1126 |
5 3
|
|
1127 |
SELECT t3.a,t3.b
|
|
1128 |
FROM t3;
|
|
1129 |
a b
|
|
1130 |
1 2
|
|
1131 |
2 2
|
|
1132 |
SELECT t2.a,t2.b,t3.a,t3.b
|
|
1133 |
FROM t2 LEFT JOIN t3 ON t2.b=t3.b
|
|
1134 |
WHERE t2.a = 4 OR (t2.a > 4 AND t3.a IS NULL);
|
|
1135 |
a b a b
|
|
1136 |
4 2 1 2
|
|
1137 |
4 2 2 2
|
|
1138 |
5 3 NULL NULL
|
|
1139 |
SELECT t2.a,t2.b,t3.a,t3.b
|
|
1140 |
FROM t2 LEFT JOIN (t3) ON t2.b=t3.b
|
|
1141 |
WHERE t2.a = 4 OR (t2.a > 4 AND t3.a IS NULL);
|
|
1142 |
a b a b
|
|
1143 |
4 2 1 2
|
|
1144 |
4 2 2 2
|
|
1145 |
5 3 NULL NULL
|
|
1146 |
ALTER TABLE t3
|
|
1147 |
CHANGE COLUMN a a1 int,
|
|
1148 |
CHANGE COLUMN c c1 int;
|
|
1149 |
SELECT t2.a,t2.b,t3.a1,t3.b
|
|
1150 |
FROM t2 LEFT JOIN t3 ON t2.b=t3.b
|
|
1151 |
WHERE t2.a = 4 OR (t2.a > 4 AND t3.a1 IS NULL);
|
|
1152 |
a b a1 b
|
|
1153 |
4 2 1 2
|
|
1154 |
4 2 2 2
|
|
1155 |
5 3 NULL NULL
|
|
1156 |
SELECT t2.a,t2.b,t3.a1,t3.b
|
|
1157 |
FROM t2 NATURAL LEFT JOIN t3
|
|
1158 |
WHERE t2.a = 4 OR (t2.a > 4 AND t3.a1 IS NULL);
|
|
1159 |
a b a1 b
|
|
1160 |
4 2 1 2
|
|
1161 |
4 2 2 2
|
|
1162 |
5 3 NULL NULL
|
|
1163 |
DROP TABLE t0,t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
|
1164 |
CREATE TABLE t1 (a int);
|
|
1165 |
CREATE TABLE t2 (a int);
|
|
1166 |
CREATE TABLE t3 (a int);
|
|
1167 |
INSERT INTO t1 VALUES (1);
|
|
1168 |
INSERT INTO t2 VALUES (2);
|
|
1169 |
INSERT INTO t3 VALUES (2);
|
|
1170 |
INSERT INTO t1 VALUES (2);
|
|
1171 |
SELECT * FROM t1 LEFT JOIN (t2 LEFT JOIN t3 ON t2.a=t3.a) ON t1.a=t3.a;
|
|
1172 |
a a a
|
|
1173 |
1 NULL NULL
|
|
1174 |
2 2 2
|
|
1175 |
SELECT * FROM t1 LEFT JOIN t2 LEFT JOIN t3 ON t2.a=t3.a ON t1.a=t3.a;
|
|
1176 |
a a a
|
|
1177 |
1 NULL NULL
|
|
1178 |
2 2 2
|
|
1179 |
DELETE FROM t1 WHERE a=2;
|
|
1180 |
SELECT * FROM t1 LEFT JOIN t2 LEFT JOIN t3 ON t2.a=t3.a ON t1.a=t3.a;
|
|
1181 |
a a a
|
|
1182 |
1 NULL NULL
|
|
1183 |
DELETE FROM t2;
|
|
1184 |
SELECT * FROM t1 LEFT JOIN t2 LEFT JOIN t3 ON t2.a=t3.a ON t1.a=t3.a;
|
|
1185 |
a a a
|
|
1186 |
1 NULL NULL
|
|
1187 |
DROP TABLE t1,t2,t3;
|
|
1188 |
CREATE TABLE t1(a int, key (a));
|
|
1189 |
CREATE TABLE t2(b int, key (b));
|
|
1190 |
CREATE TABLE t3(c int, key (c));
|
|
1191 |
INSERT INTO t1 VALUES (NULL), (0), (1), (2), (3), (4), (5), (6), (7), (8), (9),
|
|
1192 |
(10), (11), (12), (13), (14), (15), (16), (17), (18), (19);
|
|
1193 |
INSERT INTO t2 VALUES (NULL), (0), (1), (2), (3), (4), (5), (6), (7), (8), (9),
|
|
1194 |
(10), (11), (12), (13), (14), (15), (16), (17), (18), (19);
|
|
1195 |
INSERT INTO t3 VALUES (0), (1), (2), (3), (4), (5);
|
|
1196 |
EXPLAIN SELECT a, b, c FROM t1 LEFT JOIN (t2, t3) ON c < 3 and b = c;
|
|
1197 |
id select_type table type possible_keys key key_len ref rows Extra
|
|
1198 |
1 SIMPLE t1 index NULL a 5 NULL 21 Using index
|
|
1199 |
1 SIMPLE t3 index c c 5 NULL 6 Using index
|
|
1200 |
1 SIMPLE t2 ref b b 5 test.t3.c 2 Using index
|
|
1201 |
EXPLAIN SELECT a, b, c FROM t1 LEFT JOIN (t2, t3) ON b < 3 and b = c;
|
|
1202 |
id select_type table type possible_keys key key_len ref rows Extra
|
|
1203 |
1 SIMPLE t1 index NULL a 5 NULL 21 Using index
|
|
1204 |
1 SIMPLE t3 index c c 5 NULL 6 Using index
|
|
1205 |
1 SIMPLE t2 ref b b 5 test.t3.c 2 Using index
|
|
1206 |
SELECT a, b, c FROM t1 LEFT JOIN (t2, t3) ON b < 3 and b = c;
|
|
1207 |
a b c
|
|
1208 |
NULL 0 0
|
|
1209 |
NULL 1 1
|
|
1210 |
NULL 2 2
|
|
1211 |
0 0 0
|
|
1212 |
0 1 1
|
|
1213 |
0 2 2
|
|
1214 |
1 0 0
|
|
1215 |
1 1 1
|
|
1216 |
1 2 2
|
|
1217 |
2 0 0
|
|
1218 |
2 1 1
|
|
1219 |
2 2 2
|
|
1220 |
3 0 0
|
|
1221 |
3 1 1
|
|
1222 |
3 2 2
|
|
1223 |
4 0 0
|
|
1224 |
4 1 1
|
|
1225 |
4 2 2
|
|
1226 |
5 0 0
|
|
1227 |
5 1 1
|
|
1228 |
5 2 2
|
|
1229 |
6 0 0
|
|
1230 |
6 1 1
|
|
1231 |
6 2 2
|
|
1232 |
7 0 0
|
|
1233 |
7 1 1
|
|
1234 |
7 2 2
|
|
1235 |
8 0 0
|
|
1236 |
8 1 1
|
|
1237 |
8 2 2
|
|
1238 |
9 0 0
|
|
1239 |
9 1 1
|
|
1240 |
9 2 2
|
|
1241 |
10 0 0
|
|
1242 |
10 1 1
|
|
1243 |
10 2 2
|
|
1244 |
11 0 0
|
|
1245 |
11 1 1
|
|
1246 |
11 2 2
|
|
1247 |
12 0 0
|
|
1248 |
12 1 1
|
|
1249 |
12 2 2
|
|
1250 |
13 0 0
|
|
1251 |
13 1 1
|
|
1252 |
13 2 2
|
|
1253 |
14 0 0
|
|
1254 |
14 1 1
|
|
1255 |
14 2 2
|
|
1256 |
15 0 0
|
|
1257 |
15 1 1
|
|
1258 |
15 2 2
|
|
1259 |
16 0 0
|
|
1260 |
16 1 1
|
|
1261 |
16 2 2
|
|
1262 |
17 0 0
|
|
1263 |
17 1 1
|
|
1264 |
17 2 2
|
|
1265 |
18 0 0
|
|
1266 |
18 1 1
|
|
1267 |
18 2 2
|
|
1268 |
19 0 0
|
|
1269 |
19 1 1
|
|
1270 |
19 2 2
|
|
1271 |
DELETE FROM t3;
|
|
1272 |
EXPLAIN SELECT a, b, c FROM t1 LEFT JOIN (t2, t3) ON b < 3 and b = c;
|
|
1273 |
id select_type table type possible_keys key key_len ref rows Extra
|
|
1274 |
1 SIMPLE t1 index NULL a 5 NULL 21 Using index
|
|
1275 |
1 SIMPLE t3 index c c 5 NULL 0 Using index
|
|
1276 |
1 SIMPLE t2 ref b b 5 test.t3.c 2 Using index
|
|
1277 |
SELECT a, b, c FROM t1 LEFT JOIN (t2, t3) ON b < 3 and b = c;
|
|
1278 |
a b c
|
|
1279 |
NULL NULL NULL
|
|
1280 |
0 NULL NULL
|
|
1281 |
1 NULL NULL
|
|
1282 |
2 NULL NULL
|
|
1283 |
3 NULL NULL
|
|
1284 |
4 NULL NULL
|
|
1285 |
5 NULL NULL
|
|
1286 |
6 NULL NULL
|
|
1287 |
7 NULL NULL
|
|
1288 |
8 NULL NULL
|
|
1289 |
9 NULL NULL
|
|
1290 |
10 NULL NULL
|
|
1291 |
11 NULL NULL
|
|
1292 |
12 NULL NULL
|
|
1293 |
13 NULL NULL
|
|
1294 |
14 NULL NULL
|
|
1295 |
15 NULL NULL
|
|
1296 |
16 NULL NULL
|
|
1297 |
17 NULL NULL
|
|
1298 |
18 NULL NULL
|
|
1299 |
19 NULL NULL
|
|
1300 |
DROP TABLE t1,t2,t3;
|
|
1301 |
CREATE TABLE t1 (c11 int);
|
|
1302 |
CREATE TABLE t2 (c21 int);
|
|
1303 |
CREATE TABLE t3 (c31 int);
|
|
1304 |
INSERT INTO t1 VALUES (4), (5);
|
|
1305 |
SELECT * FROM t1 LEFT JOIN t2 ON c11=c21;
|
|
1306 |
c11 c21
|
|
1307 |
4 NULL
|
|
1308 |
5 NULL
|
|
1309 |
EXPLAIN SELECT * FROM t1 LEFT JOIN t2 ON c11=c21;
|
|
1310 |
id select_type table type possible_keys key key_len ref rows Extra
|
|
1311 |
1 SIMPLE t2 system NULL NULL NULL NULL 0 const row not found
|
|
1312 |
1 SIMPLE t1 ALL NULL NULL NULL NULL 2
|
|
1313 |
SELECT * FROM t1 LEFT JOIN (t2 LEFT JOIN t3 ON c21=c31) ON c11=c21;
|
|
1314 |
c11 c21 c31
|
|
1315 |
4 NULL NULL
|
|
1316 |
5 NULL NULL
|
|
1317 |
EXPLAIN SELECT * FROM t1 LEFT JOIN (t2 LEFT JOIN t3 ON c21=c31) ON c11=c21;
|
|
1318 |
id select_type table type possible_keys key key_len ref rows Extra
|
|
1319 |
1 SIMPLE t1 ALL NULL NULL NULL NULL 2
|
|
1320 |
1 SIMPLE t2 ALL NULL NULL NULL NULL 0
|
|
1321 |
1 SIMPLE t3 ALL NULL NULL NULL NULL 0
|
|
1322 |
DROP TABLE t1,t2,t3;
|
|
1323 |
create table t1 (a int);
|
|
1324 |
insert into t1 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
|
|
1325 |
create table t2 (a int, filler char(100), key(a));
|
|
1326 |
insert into t2 select A.a + 10*B.a, '' from t1 A, t1 B;
|
|
1327 |
create table t3 like t2;
|
|
1328 |
insert into t3 select * from t2;
|
|
1329 |
explain select * from t1 left join
|
|
1330 |
(t2 left join t3 on (t2.a = t3.a))
|
|
1331 |
on (t1.a = t2.a);
|
|
1332 |
id select_type table type possible_keys key key_len ref rows Extra
|
|
1333 |
1 SIMPLE t1 ALL NULL NULL NULL NULL 10
|
|
1334 |
1 SIMPLE t2 ref a a 5 test.t1.a 1
|
|
1335 |
1 SIMPLE t3 ref a a 5 test.t2.a 1
|
|
1336 |
drop table t1, t2, t3;
|
|
1337 |
CREATE TABLE t1 (
|
|
1338 |
id int NOT NULL PRIMARY KEY,
|
|
1339 |
ct int DEFAULT NULL,
|
|
1340 |
pc int DEFAULT NULL,
|
|
1341 |
INDEX idx_ct (ct),
|
|
1342 |
INDEX idx_pc (pc)
|
|
1343 |
);
|
|
1344 |
INSERT INTO t1 VALUES
|
|
1345 |
(1,NULL,NULL),(2,NULL,NULL),(3,NULL,NULL),(4,NULL,NULL),(5,NULL,NULL);
|
|
1346 |
CREATE TABLE t2 (
|
|
1347 |
id int NOT NULL PRIMARY KEY,
|
|
1348 |
sr int NOT NULL,
|
|
1349 |
nm varchar(255) NOT NULL,
|
|
1350 |
INDEX idx_sr (sr)
|
|
1351 |
);
|
|
1352 |
INSERT INTO t2 VALUES
|
|
1353 |
(2441905,4308,'LesAbymes'),(2441906,4308,'Anse-Bertrand');
|
|
1354 |
CREATE TABLE t3 (
|
|
1355 |
id int NOT NULL PRIMARY KEY,
|
|
1356 |
ct int NOT NULL,
|
|
1357 |
ln int NOT NULL,
|
|
1358 |
INDEX idx_ct (ct),
|
|
1359 |
INDEX idx_ln (ln)
|
|
1360 |
);
|
|
1361 |
CREATE TABLE t4 (
|
|
1362 |
id int NOT NULL PRIMARY KEY,
|
|
1363 |
nm varchar(255) NOT NULL
|
|
1364 |
);
|
|
1365 |
INSERT INTO t4 VALUES (4308,'Guadeloupe'),(4309,'Martinique');
|
|
1366 |
SELECT t1.*
|
|
1367 |
FROM t1 LEFT JOIN
|
|
1368 |
(t2 LEFT JOIN t3 ON t3.ct=t2.id AND t3.ln='5') ON t1.ct=t2.id
|
|
1369 |
WHERE t1.id='5';
|
|
1370 |
id ct pc
|
|
1371 |
5 NULL NULL
|
|
1372 |
SELECT t1.*, t4.nm
|
|
1373 |
FROM t1 LEFT JOIN
|
|
1374 |
(t2 LEFT JOIN t3 ON t3.ct=t2.id AND t3.ln='5') ON t1.ct=t2.id
|
|
1375 |
LEFT JOIN t4 ON t2.sr=t4.id
|
|
1376 |
WHERE t1.id='5';
|
|
1377 |
id ct pc nm
|
|
1378 |
5 NULL NULL NULL
|
|
1379 |
DROP TABLE t1,t2,t3,t4;
|
|
1380 |
CREATE TABLE t1 (a INT, b INT);
|
|
1381 |
CREATE TABLE t2 (a INT);
|
|
1382 |
CREATE TABLE t3 (a INT, c INT);
|
|
1383 |
CREATE TABLE t4 (a INT, c INT);
|
|
1384 |
CREATE TABLE t5 (a INT, c INT);
|
|
1385 |
SELECT b FROM t1 JOIN (t2 LEFT JOIN t3 USING (a) LEFT JOIN t4 USING (a)
|
|
1386 |
LEFT JOIN t5 USING (a)) USING (a);
|
|
1387 |
b
|
|
1388 |
SELECT c FROM t1 JOIN (t2 LEFT JOIN t3 USING (a) LEFT JOIN t4 USING (a)
|
|
1389 |
LEFT JOIN t5 USING (a)) USING (a);
|
|
1390 |
ERROR 23000: Column 'c' in field list is ambiguous
|
|
1391 |
SELECT b FROM t1 JOIN (t2 JOIN t3 USING (a) JOIN t4 USING (a)
|
|
1392 |
JOIN t5 USING (a)) USING (a);
|
|
1393 |
b
|
|
1394 |
SELECT c FROM t1 JOIN (t2 JOIN t3 USING (a) JOIN t4 USING (a)
|
|
1395 |
JOIN t5 USING (a)) USING (a);
|
|
1396 |
ERROR 23000: Column 'c' in field list is ambiguous
|
|
1397 |
DROP TABLE t1,t2,t3,t4,t5;
|
|
1398 |
CREATE TABLE t1 (a INT, b INT);
|
|
1399 |
CREATE TABLE t2 (a INT, b INT);
|
|
1400 |
CREATE TABLE t3 (a INT, b INT);
|
|
1401 |
INSERT INTO t1 VALUES (1,1);
|
|
1402 |
INSERT INTO t2 VALUES (1,1);
|
|
1403 |
INSERT INTO t3 VALUES (1,1);
|
|
1404 |
SELECT * FROM t1 JOIN (t2 JOIN t3 USING (b)) USING (a);
|
|
1405 |
ERROR 23000: Column 'a' in from clause is ambiguous
|
|
1406 |
DROP TABLE t1,t2,t3;
|
|
1407 |
CREATE TABLE t1 (
|
|
1408 |
carrier char(2) default NULL,
|
|
1409 |
id int NOT NULL auto_increment PRIMARY KEY
|
|
1410 |
);
|
|
1411 |
INSERT INTO t1 VALUES
|
|
1412 |
('CO',235371754),('CO',235376554),('CO',235376884),('CO',235377874),
|
|
1413 |
('CO',231060394),('CO',231059224),('CO',231059314),('CO',231060484),
|
|
1414 |
('CO',231060274),('CO',231060124),('CO',231060244),('CO',231058594),
|
|
1415 |
('CO',231058924),('CO',231058504),('CO',231059344),('CO',231060424),
|
|
1416 |
('CO',231059554),('CO',231060304),('CO',231059644),('CO',231059464),
|
|
1417 |
('CO',231059764),('CO',231058294),('CO',231058624),('CO',231058864),
|
|
1418 |
('CO',231059374),('CO',231059584),('CO',231059734),('CO',231059014),
|
|
1419 |
('CO',231059854),('CO',231059494),('CO',231059794),('CO',231058534),
|
|
1420 |
('CO',231058324),('CO',231058684),('CO',231059524),('CO',231059974);
|
|
1421 |
CREATE TABLE t2 (
|
|
1422 |
scan_date date default NULL,
|
|
1423 |
package_id int default NULL,
|
|
1424 |
INDEX scan_date(scan_date),
|
|
1425 |
INDEX package_id(package_id)
|
|
1426 |
);
|
|
1427 |
INSERT INTO t2 VALUES
|
|
1428 |
('2008-12-29',231062944),('2008-12-29',231065764),('2008-12-29',231066124),
|
|
1429 |
('2008-12-29',231060094),('2008-12-29',231061054),('2008-12-29',231065644),
|
|
1430 |
('2008-12-29',231064384),('2008-12-29',231064444),('2008-12-29',231073774),
|
|
1431 |
('2008-12-29',231058594),('2008-12-29',231059374),('2008-12-29',231066004),
|
|
1432 |
('2008-12-29',231068494),('2008-12-29',231070174),('2008-12-29',231071884),
|
|
1433 |
('2008-12-29',231063274),('2008-12-29',231063754),('2008-12-29',231064144),
|
|
1434 |
('2008-12-29',231069424),('2008-12-29',231073714),('2008-12-29',231058414),
|
|
1435 |
('2008-12-29',231060994),('2008-12-29',231069154),('2008-12-29',231068614),
|
|
1436 |
('2008-12-29',231071464),('2008-12-29',231074014),('2008-12-29',231059614),
|
|
1437 |
('2008-12-29',231059074),('2008-12-29',231059464),('2008-12-29',231069094),
|
|
1438 |
('2008-12-29',231067294),('2008-12-29',231070144),('2008-12-29',231073804),
|
|
1439 |
('2008-12-29',231072634),('2008-12-29',231058294),('2008-12-29',231065344),
|
|
1440 |
('2008-12-29',231066094),('2008-12-29',231069034),('2008-12-29',231058594),
|
|
1441 |
('2008-12-29',231059854),('2008-12-29',231059884),('2008-12-29',231059914),
|
|
1442 |
('2008-12-29',231063664),('2008-12-29',231063814),('2008-12-29',231063904);
|
|
1443 |
CREATE TABLE t3 (
|
|
1444 |
package_id int default NULL,
|
|
1445 |
INDEX package_id(package_id)
|
|
1446 |
);
|
|
1447 |
INSERT INTO t3 VALUES
|
|
1448 |
(231058294),(231058324),(231058354),(231058384),(231058414),(231058444),
|
|
1449 |
(231058474),(231058504),(231058534),(231058564),(231058594),(231058624),
|
|
1450 |
(231058684),(231058744),(231058804),(231058864),(231058924),(231058954),
|
|
1451 |
(231059014),(231059074),(231059104),(231059134),(231059164),(231059194),
|
|
1452 |
(231059224),(231059254),(231059284),(231059314),(231059344),(231059374),
|
|
1453 |
(231059404),(231059434),(231059464),(231059494),(231059524),(231059554),
|
|
1454 |
(231059584),(231059614),(231059644),(231059674),(231059704),(231059734),
|
|
1455 |
(231059764),(231059794),(231059824),(231059854),(231059884),(231059914),
|
|
1456 |
(231059944),(231059974),(231060004),(231060034),(231060064),(231060094),
|
|
1457 |
(231060124),(231060154),(231060184),(231060214),(231060244),(231060274),
|
|
1458 |
(231060304),(231060334),(231060364),(231060394),(231060424),(231060454),
|
|
1459 |
(231060484),(231060514),(231060544),(231060574),(231060604),(231060634),
|
|
1460 |
(231060664),(231060694),(231060724),(231060754),(231060784),(231060814),
|
|
1461 |
(231060844),(231060874),(231060904),(231060934),(231060964),(231060994),
|
|
1462 |
(231061024),(231061054),(231061084),(231061144),(231061174),(231061204),
|
|
1463 |
(231061234),(231061294),(231061354),(231061384),(231061414),(231061474),
|
|
1464 |
(231061564),(231061594),(231061624),(231061684),(231061714),(231061774),
|
|
1465 |
(231061804),(231061894),(231061984),(231062074),(231062134),(231062224),
|
|
1466 |
(231062254),(231062314),(231062374),(231062434),(231062494),(231062554),
|
|
1467 |
(231062584),(231062614),(231062644),(231062704),(231062734),(231062794),
|
|
1468 |
(231062854),(231062884),(231062944),(231063004),(231063034),(231063064),
|
|
1469 |
(231063124),(231063154),(231063184),(231063214),(231063274),(231063334),
|
|
1470 |
(231063394),(231063424),(231063454),(231063514),(231063574),(231063664);
|
|
1471 |
CREATE TABLE t4 (
|
|
1472 |
carrier char(2) NOT NULL default '' PRIMARY KEY,
|
|
1473 |
id int(11) default NULL,
|
|
1474 |
INDEX id(id)
|
|
1475 |
);
|
|
1476 |
INSERT INTO t4 VALUES
|
|
1477 |
('99',6),('SK',456),('UA',486),('AI',1081),('OS',1111),('VS',1510);
|
|
1478 |
CREATE TABLE t5 (
|
|
1479 |
carrier_id int default NULL,
|
|
1480 |
INDEX carrier_id(carrier_id)
|
|
1481 |
);
|
|
1482 |
INSERT INTO t5 VALUES
|
|
1483 |
(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),
|
|
1484 |
(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),
|
|
1485 |
(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),
|
|
1486 |
(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),
|
|
1487 |
(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),
|
|
1488 |
(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(6),(456),(456),(456),
|
|
1489 |
(456),(456),(456),(456),(456),(456),(456),(456),(456),(456),(456),(456),
|
|
1490 |
(456),(486),(1081),(1111),(1111),(1111),(1111),(1510);
|
|
1491 |
SELECT COUNT(*)
|
|
1492 |
FROM((t2 JOIN t1 ON t2.package_id = t1.id)
|
|
1493 |
JOIN t3 ON t3.package_id = t1.id);
|
|
1494 |
COUNT(*)
|
|
1495 |
6
|
|
1496 |
EXPLAIN
|
|
1497 |
SELECT COUNT(*)
|
|
1498 |
FROM ((t2 JOIN t1 ON t2.package_id = t1.id)
|
|
1499 |
JOIN t3 ON t3.package_id = t1.id)
|
|
1500 |
LEFT JOIN
|
|
1501 |
(t5 JOIN t4 ON t5.carrier_id = t4.id)
|
|
1502 |
ON t4.carrier = t1.carrier;
|
|
1503 |
id select_type table type possible_keys key key_len ref rows Extra
|
|
1504 |
1 SIMPLE t2 index package_id package_id 5 NULL 45 Using index
|
|
1505 |
1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t2.package_id 1
|
|
1506 |
1 SIMPLE t4 eq_ref PRIMARY,id PRIMARY 2 test.t1.carrier 1
|
|
1507 |
1 SIMPLE t5 ref carrier_id carrier_id 5 test.t4.id 22 Using index
|
|
1508 |
1 SIMPLE t3 ref package_id package_id 5 test.t1.id 1 Using where; Using index
|
|
1509 |
SELECT COUNT(*)
|
|
1510 |
FROM ((t2 JOIN t1 ON t2.package_id = t1.id)
|
|
1511 |
JOIN t3 ON t3.package_id = t1.id)
|
|
1512 |
LEFT JOIN
|
|
1513 |
(t5 JOIN t4 ON t5.carrier_id = t4.id)
|
|
1514 |
ON t4.carrier = t1.carrier;
|
|
1515 |
COUNT(*)
|
|
1516 |
6
|
|
1517 |
DROP TABLE t1,t2,t3,t4,t5;
|
|
1518 |
End of 5.0 tests
|