oceanbase
3709 строк · 234.7 Кб
1drop table if exists t1,t2;
2explain_protocol: 1
3result_format: 4
4alter system set ob_enable_batched_multi_statement=true;
5create table t1 (a int auto_increment , primary key (a));
6EXPLAIN BASIC insert into t1 values (NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL);
7Query Plan
8============================
9|ID|OPERATOR |NAME|
10----------------------------
11|0 |DISTRIBUTED INSERT| |
12|1 |└─EXPRESSION | |
13============================
14Outputs & filters:
15-------------------------------------
160 - output(nil), filter(nil)
17columns([{t1: ({t1: (t1.a)})}]),
18column_values([column_conv(INT,PS:(11,0),NOT NULL,t1.a.nextval(column_conv(INT,PS:(11,0),NOT NULL,__values.a)))])
191 - output([__values.a]), filter(nil)
20values({NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL},
21{NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL}, {NULL})
22insert into t1 values (NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL);
23EXPLAIN BASIC update t1 set a=a+10 where a > 34;
24Query Plan
25============================
26|ID|OPERATOR |NAME|
27----------------------------
28|0 |UPDATE | |
29|1 |└─TABLE RANGE SCAN|t1 |
30============================
31Outputs & filters:
32-------------------------------------
330 - output(nil), filter(nil)
34table_columns([{t1: ({t1: (t1.a)})}]),
35update([t1.a=column_conv(INT,PS:(11,0),NOT NULL,cast(t1.a + 10, INT(-1, 0)))])
361 - output([t1.a]), filter(nil), rowset=16
37access([t1.a]), partitions(p0)
38is_index_back=false, is_global_index=false,
39range_key([t1.a]), range(34 ; MAX),
40range_cond([t1.a > 34])
41update t1 set a=a+10 where a > 34;
42EXPLAIN BASIC update t1 set a=a+100 where a > 0;
43Query Plan
44============================
45|ID|OPERATOR |NAME|
46----------------------------
47|0 |UPDATE | |
48|1 |└─TABLE RANGE SCAN|t1 |
49============================
50Outputs & filters:
51-------------------------------------
520 - output(nil), filter(nil)
53table_columns([{t1: ({t1: (t1.a)})}]),
54update([t1.a=column_conv(INT,PS:(11,0),NOT NULL,cast(t1.a + 100, INT(-1, 0)))])
551 - output([t1.a]), filter(nil), rowset=256
56access([t1.a]), partitions(p0)
57is_index_back=false, is_global_index=false,
58range_key([t1.a]), range(0 ; MAX),
59range_cond([t1.a > 0])
60update t1 set a=a+100 where a > 0;
61
62EXPLAIN BASIC update t1 set a=a+100 where a=1 and a=2;
63Query Plan
64============================
65|ID|OPERATOR |NAME|
66----------------------------
67|0 |UPDATE | |
68|1 |└─TABLE RANGE SCAN|t1 |
69============================
70Outputs & filters:
71-------------------------------------
720 - output(nil), filter(nil)
73table_columns([{t1: ({t1: (t1.a)})}]),
74update([t1.a=column_conv(INT,PS:(11,0),NOT NULL,cast(cast(1, INT(11, 0)) + 100, INT(-1, 0)))])
751 - output([t1.a]), filter(nil), rowset=16
76access([t1.a]), partitions(p0)
77is_index_back=false, is_global_index=false,
78range_key([t1.a]), range(MAX ; MIN)always false,
79range_cond([t1.a = 1], [t1.a = 2])
80update t1 set a=a+100 where a=1 and a=2;
81update t1 set a=b+100 where a=1 and a=2;
82ERROR 42S22: Unknown column 'b' in 'field list'
83update t1 set a=b+100 where c=1 and a=2;
84ERROR 42S22: Unknown column 'b' in 'field list'
85update t1 set d=a+100 where a=1;
86ERROR 42S22: Unknown column 'd' in 'field list'
87EXPLAIN BASIC select * from t1;
88Query Plan
89=========================
90|ID|OPERATOR |NAME|
91-------------------------
92|0 |TABLE FULL SCAN|t1 |
93=========================
94Outputs & filters:
95-------------------------------------
960 - output([t1.a]), filter(nil), rowset=256
97access([t1.a]), partitions(p0)
98is_index_back=false, is_global_index=false,
99range_key([t1.a]), range(MIN ; MAX)always true
100select * from t1;
101+-----+
102| a |
103+-----+
104| 101 |
105| 102 |
106| 103 |
107| 104 |
108| 105 |
109| 106 |
110| 107 |
111| 108 |
112| 109 |
113| 110 |
114| 111 |
115| 112 |
116| 113 |
117| 114 |
118| 115 |
119| 116 |
120| 117 |
121| 118 |
122| 119 |
123| 120 |
124| 121 |
125| 122 |
126| 123 |
127| 124 |
128| 125 |
129| 126 |
130| 127 |
131| 128 |
132| 129 |
133| 130 |
134| 131 |
135| 132 |
136| 133 |
137| 134 |
138| 145 |
139| 146 |
140+-----+
141drop table t1;
142
143create table t1(a int primary key, b int) partition by hash(a) partitions 3;
144EXPLAIN BASIC insert into t1 values(1, 1), (2, 2);
145Query Plan
146============================
147|ID|OPERATOR |NAME|
148----------------------------
149|0 |DISTRIBUTED INSERT| |
150|1 |└─EXPRESSION | |
151============================
152Outputs & filters:
153-------------------------------------
1540 - output(nil), filter(nil)
155columns([{t1: ({t1: (t1.a, t1.b)})}]),
156column_values([column_conv(INT,PS:(11,0),NOT NULL,__values.a)], [column_conv(INT,PS:(11,0),NULL,__values.b)])
1571 - output([__values.a], [__values.b]), filter(nil)
158values({1, 1}, {2, 2})
159insert into t1 values(1, 1), (2, 2);
160EXPLAIN BASIC update t1 set b=b+1 where a>0;
161Query Plan
162=======================================
163|ID|OPERATOR |NAME |
164---------------------------------------
165|0 |PX COORDINATOR | |
166|1 |└─EXCHANGE OUT DISTR |:EX10000|
167|2 | └─PX PARTITION ITERATOR| |
168|3 | └─UPDATE | |
169|4 | └─TABLE RANGE SCAN |t1 |
170=======================================
171Outputs & filters:
172-------------------------------------
1730 - output(nil), filter(nil), rowset=16
1741 - output(nil), filter(nil), rowset=16
175dop=1
1762 - output(nil), filter(nil), rowset=16
177partition wise, force partition granule
1783 - output(nil), filter(nil)
179table_columns([{t1: ({t1: (t1.a, t1.b)})}]),
180update([t1.b=column_conv(INT,PS:(11,0),NULL,cast(t1.b + 1, INT(-1, 0)))])
1814 - output([t1.a], [t1.b]), filter(nil), rowset=16
182access([t1.a], [t1.b]), partitions(p[0-2])
183is_index_back=false, is_global_index=false,
184range_key([t1.a]), range(0 ; MAX),
185range_cond([t1.a > 0])
186update t1 set b=b+1 where a>0;
187EXPLAIN BASIC select * from t1;
188Query Plan
189=======================================
190|ID|OPERATOR |NAME |
191---------------------------------------
192|0 |PX COORDINATOR | |
193|1 |└─EXCHANGE OUT DISTR |:EX10000|
194|2 | └─PX PARTITION ITERATOR| |
195|3 | └─TABLE FULL SCAN |t1 |
196=======================================
197Outputs & filters:
198-------------------------------------
1990 - output([INTERNAL_FUNCTION(t1.a, t1.b)]), filter(nil), rowset=16
2001 - output([INTERNAL_FUNCTION(t1.a, t1.b)]), filter(nil), rowset=16
201dop=1
2022 - output([t1.a], [t1.b]), filter(nil), rowset=16
203force partition granule
2043 - output([t1.a], [t1.b]), filter(nil), rowset=16
205access([t1.a], [t1.b]), partitions(p[0-2])
206is_index_back=false, is_global_index=false,
207range_key([t1.a]), range(MIN ; MAX)always true
208select * from t1;
209+---+------+
210| a | b |
211+---+------+
212| 1 | 2 |
213| 2 | 3 |
214+---+------+
215drop table t1;
216
217create table t1(a int primary key, b int) partition by hash(a) partitions 3;
218EXPLAIN BASIC insert into t1 values(1, 1), (2, 2), (3, 3), (4, 4), (5, 5);
219Query Plan
220============================
221|ID|OPERATOR |NAME|
222----------------------------
223|0 |DISTRIBUTED INSERT| |
224|1 |└─EXPRESSION | |
225============================
226Outputs & filters:
227-------------------------------------
2280 - output(nil), filter(nil)
229columns([{t1: ({t1: (t1.a, t1.b)})}]),
230column_values([column_conv(INT,PS:(11,0),NOT NULL,__values.a)], [column_conv(INT,PS:(11,0),NULL,__values.b)])
2311 - output([__values.a], [__values.b]), filter(nil)
232values({1, 1}, {2, 2}, {3, 3}, {4, 4}, {5, 5})
233insert into t1 values(1, 1), (2, 2), (3, 3), (4, 4), (5, 5);
234EXPLAIN BASIC update t1 set b=b+1 where a>0;
235Query Plan
236=======================================
237|ID|OPERATOR |NAME |
238---------------------------------------
239|0 |PX COORDINATOR | |
240|1 |└─EXCHANGE OUT DISTR |:EX10000|
241|2 | └─PX PARTITION ITERATOR| |
242|3 | └─UPDATE | |
243|4 | └─TABLE RANGE SCAN |t1 |
244=======================================
245Outputs & filters:
246-------------------------------------
2470 - output(nil), filter(nil), rowset=16
2481 - output(nil), filter(nil), rowset=16
249dop=1
2502 - output(nil), filter(nil), rowset=16
251partition wise, force partition granule
2523 - output(nil), filter(nil)
253table_columns([{t1: ({t1: (t1.a, t1.b)})}]),
254update([t1.b=column_conv(INT,PS:(11,0),NULL,cast(t1.b + 1, INT(-1, 0)))])
2554 - output([t1.a], [t1.b]), filter(nil), rowset=16
256access([t1.a], [t1.b]), partitions(p[0-2])
257is_index_back=false, is_global_index=false,
258range_key([t1.a]), range(0 ; MAX),
259range_cond([t1.a > 0])
260update t1 set b=b+1 where a>0;
261EXPLAIN BASIC select * from t1;
262Query Plan
263=======================================
264|ID|OPERATOR |NAME |
265---------------------------------------
266|0 |PX COORDINATOR | |
267|1 |└─EXCHANGE OUT DISTR |:EX10000|
268|2 | └─PX PARTITION ITERATOR| |
269|3 | └─TABLE FULL SCAN |t1 |
270=======================================
271Outputs & filters:
272-------------------------------------
2730 - output([INTERNAL_FUNCTION(t1.a, t1.b)]), filter(nil), rowset=16
2741 - output([INTERNAL_FUNCTION(t1.a, t1.b)]), filter(nil), rowset=16
275dop=1
2762 - output([t1.a], [t1.b]), filter(nil), rowset=16
277force partition granule
2783 - output([t1.a], [t1.b]), filter(nil), rowset=16
279access([t1.a], [t1.b]), partitions(p[0-2])
280is_index_back=false, is_global_index=false,
281range_key([t1.a]), range(MIN ; MAX)always true
282select * from t1;
283+---+------+
284| a | b |
285+---+------+
286| 3 | 4 |
287| 1 | 2 |
288| 4 | 5 |
289| 2 | 3 |
290| 5 | 6 |
291+---+------+
292drop table t1;
293
294create table t1(a int primary key, b int) partition by hash(a) partitions 3;
295create index gkey on t1(b) global;
296EXPLAIN BASIC insert into t1 values(1, 1), (2, 2);
297Query Plan
298============================
299|ID|OPERATOR |NAME|
300----------------------------
301|0 |DISTRIBUTED INSERT| |
302|1 |└─EXPRESSION | |
303============================
304Outputs & filters:
305-------------------------------------
3060 - output(nil), filter(nil)
307columns([{t1: ({t1: (t1.a, t1.b)}, {gkey: (t1.b, t1.a)})}]),
308column_values([column_conv(INT,PS:(11,0),NOT NULL,__values.a)], [column_conv(INT,PS:(11,0),NULL,__values.b)])
3091 - output([__values.a], [__values.b]), filter(nil)
310values({1, 1}, {2, 2})
311insert into t1 values(1, 1), (2, 2);
312EXPLAIN BASIC update t1 set b=b+1 where a>0;
313Query Plan
314=========================================
315|ID|OPERATOR |NAME |
316-----------------------------------------
317|0 |DISTRIBUTED UPDATE | |
318|1 |└─PX COORDINATOR | |
319|2 | └─EXCHANGE OUT DISTR |:EX10000|
320|3 | └─PX PARTITION ITERATOR| |
321|4 | └─TABLE RANGE SCAN |t1 |
322=========================================
323Outputs & filters:
324-------------------------------------
3250 - output(nil), filter(nil)
326table_columns([{t1: ({t1: (t1.a, t1.b)}, {gkey: (t1.b, t1.a)})}]),
327update([t1.b=column_conv(INT,PS:(11,0),NULL,cast(t1.b + 1, INT(-1, 0)))])
3281 - output([t1.a], [t1.b]), filter(nil), rowset=16
3292 - output([t1.a], [t1.b]), filter(nil), rowset=16
330dop=1
3313 - output([t1.a], [t1.b]), filter(nil), rowset=16
332force partition granule
3334 - output([t1.a], [t1.b]), filter(nil), rowset=16
334access([t1.a], [t1.b]), partitions(p[0-2])
335is_index_back=false, is_global_index=false,
336range_key([t1.a]), range(0 ; MAX),
337range_cond([t1.a > 0])
338update t1 set b=b+1 where a>0;
339EXPLAIN BASIC select * from t1;
340Query Plan
341=========================================
342|ID|OPERATOR |NAME |
343-----------------------------------------
344|0 |DISTRIBUTED TABLE FULL SCAN|t1(gkey)|
345=========================================
346Outputs & filters:
347-------------------------------------
3480 - output([t1.a], [t1.b]), filter(nil), rowset=16
349access([t1.a], [t1.b]), partitions(p0)
350is_index_back=false, is_global_index=true,
351range_key([t1.b], [t1.a]), range(MIN,MIN ; MAX,MAX)always true
352select * from t1;
353+---+------+
354| a | b |
355+---+------+
356| 1 | 2 |
357| 2 | 3 |
358+---+------+
359drop table t1;
360
361create table t1(a int primary key, b int) partition by hash(a) partitions 3;
362create index gkey on t1(b) global;
363EXPLAIN BASIC insert into t1 values(1, 1), (2, 2), (3, 3), (4, 4), (5, 5);
364Query Plan
365============================
366|ID|OPERATOR |NAME|
367----------------------------
368|0 |DISTRIBUTED INSERT| |
369|1 |└─EXPRESSION | |
370============================
371Outputs & filters:
372-------------------------------------
3730 - output(nil), filter(nil)
374columns([{t1: ({t1: (t1.a, t1.b)}, {gkey: (t1.b, t1.a)})}]),
375column_values([column_conv(INT,PS:(11,0),NOT NULL,__values.a)], [column_conv(INT,PS:(11,0),NULL,__values.b)])
3761 - output([__values.a], [__values.b]), filter(nil)
377values({1, 1}, {2, 2}, {3, 3}, {4, 4}, {5, 5})
378insert into t1 values(1, 1), (2, 2), (3, 3), (4, 4), (5, 5);
379EXPLAIN BASIC update t1 set b=b+1 where a>0;
380Query Plan
381=========================================
382|ID|OPERATOR |NAME |
383-----------------------------------------
384|0 |DISTRIBUTED UPDATE | |
385|1 |└─PX COORDINATOR | |
386|2 | └─EXCHANGE OUT DISTR |:EX10000|
387|3 | └─PX PARTITION ITERATOR| |
388|4 | └─TABLE RANGE SCAN |t1 |
389=========================================
390Outputs & filters:
391-------------------------------------
3920 - output(nil), filter(nil)
393table_columns([{t1: ({t1: (t1.a, t1.b)}, {gkey: (t1.b, t1.a)})}]),
394update([t1.b=column_conv(INT,PS:(11,0),NULL,cast(t1.b + 1, INT(-1, 0)))])
3951 - output([t1.a], [t1.b]), filter(nil), rowset=16
3962 - output([t1.a], [t1.b]), filter(nil), rowset=16
397dop=1
3983 - output([t1.a], [t1.b]), filter(nil), rowset=16
399force partition granule
4004 - output([t1.a], [t1.b]), filter(nil), rowset=16
401access([t1.a], [t1.b]), partitions(p[0-2])
402is_index_back=false, is_global_index=false,
403range_key([t1.a]), range(0 ; MAX),
404range_cond([t1.a > 0])
405update t1 set b=b+1 where a>0;
406EXPLAIN BASIC select * from t1;
407Query Plan
408=========================================
409|ID|OPERATOR |NAME |
410-----------------------------------------
411|0 |DISTRIBUTED TABLE FULL SCAN|t1(gkey)|
412=========================================
413Outputs & filters:
414-------------------------------------
4150 - output([t1.a], [t1.b]), filter(nil), rowset=16
416access([t1.a], [t1.b]), partitions(p0)
417is_index_back=false, is_global_index=true,
418range_key([t1.b], [t1.a]), range(MIN,MIN ; MAX,MAX)always true
419select * from t1;
420+---+------+
421| a | b |
422+---+------+
423| 1 | 2 |
424| 2 | 3 |
425| 3 | 4 |
426| 4 | 5 |
427| 5 | 6 |
428+---+------+
429drop table t1;
430
431create table t1(a int primary key, b int);
432create index gkey on t1(b) partition by hash(b) partitions 2;
433EXPLAIN BASIC insert into t1 values(1, 1), (2, 2), (3, 3), (4, 4), (5, 5);
434Query Plan
435============================
436|ID|OPERATOR |NAME|
437----------------------------
438|0 |DISTRIBUTED INSERT| |
439|1 |└─EXPRESSION | |
440============================
441Outputs & filters:
442-------------------------------------
4430 - output(nil), filter(nil)
444columns([{t1: ({t1: (t1.a, t1.b)}, {gkey: (t1.b, t1.a)})}]),
445column_values([column_conv(INT,PS:(11,0),NOT NULL,__values.a)], [column_conv(INT,PS:(11,0),NULL,__values.b)])
4461 - output([__values.a], [__values.b]), filter(nil)
447values({1, 1}, {2, 2}, {3, 3}, {4, 4}, {5, 5})
448insert into t1 values(1, 1), (2, 2), (3, 3), (4, 4), (5, 5);
449EXPLAIN BASIC update /*+index(t1 gkey)*/ t1 set b=b+1 where b>0 and b<5;
450Query Plan
451============================================
452|ID|OPERATOR |NAME |
453--------------------------------------------
454|0 |DISTRIBUTED UPDATE | |
455|1 |└─DISTRIBUTED TABLE RANGE SCAN|t1(gkey)|
456============================================
457Outputs & filters:
458-------------------------------------
4590 - output(nil), filter(nil)
460table_columns([{t1: ({t1: (t1.a, t1.b)}, {gkey: (t1.b, t1.a)})}]),
461update([t1.b=column_conv(INT,PS:(11,0),NULL,cast(t1.b + 1, INT(-1, 0)))])
4621 - output([t1.a], [t1.b]), filter(nil), rowset=16
463access([t1.a], [t1.b]), partitions(p[0-1])
464is_index_back=false, is_global_index=true,
465range_key([t1.b], [t1.a]), range(0,MAX ; 5,MIN),
466range_cond([t1.b > 0], [t1.b < 5])
467update /*+index(t1 gkey)*/ t1 set b=b+1 where b>0 and b<5;
468EXPLAIN BASIC select /*+index(t1 primary)*/ * from t1 order by a;
469Query Plan
470=========================
471|ID|OPERATOR |NAME|
472-------------------------
473|0 |TABLE FULL SCAN|t1 |
474=========================
475Outputs & filters:
476-------------------------------------
4770 - output([t1.a], [t1.b]), filter(nil), rowset=16
478access([t1.a], [t1.b]), partitions(p0)
479is_index_back=false, is_global_index=false,
480range_key([t1.a]), range(MIN ; MAX)always true
481select /*+index(t1 primary)*/ * from t1 order by a;
482+---+------+
483| a | b |
484+---+------+
485| 1 | 2 |
486| 2 | 3 |
487| 3 | 4 |
488| 4 | 5 |
489| 5 | 5 |
490+---+------+
491drop table t1;
492
493create table t1(a int primary key, b int) partition by hash(a) partitions 3;
494create table t2(a int primary key, b int) partition by hash(a) partitions 3;
495EXPLAIN BASIC insert into t1 values(1, 1), (2, 2), (3, 3), (4, 4), (5, 5);
496Query Plan
497============================
498|ID|OPERATOR |NAME|
499----------------------------
500|0 |DISTRIBUTED INSERT| |
501|1 |└─EXPRESSION | |
502============================
503Outputs & filters:
504-------------------------------------
5050 - output(nil), filter(nil)
506columns([{t1: ({t1: (t1.a, t1.b)})}]),
507column_values([column_conv(INT,PS:(11,0),NOT NULL,__values.a)], [column_conv(INT,PS:(11,0),NULL,__values.b)])
5081 - output([__values.a], [__values.b]), filter(nil)
509values({1, 1}, {2, 2}, {3, 3}, {4, 4}, {5, 5})
510insert into t1 values(1, 1), (2, 2), (3, 3), (4, 4), (5, 5);
511EXPLAIN BASIC update /*+use_nl(t1, t2), leading(t1)*/ t1 set b=b+1 where a in (select a from t2);
512Query Plan
513=======================================
514|ID|OPERATOR |NAME |
515---------------------------------------
516|0 |PX COORDINATOR | |
517|1 |└─EXCHANGE OUT DISTR |:EX10000|
518|2 | └─PX PARTITION ITERATOR| |
519|3 | └─UPDATE | |
520|4 | └─NESTED-LOOP JOIN | |
521|5 | ├─TABLE FULL SCAN|t1 |
522|6 | └─TABLE GET |t2 |
523=======================================
524Outputs & filters:
525-------------------------------------
5260 - output(nil), filter(nil), rowset=16
5271 - output(nil), filter(nil), rowset=16
528dop=1
5292 - output(nil), filter(nil), rowset=16
530partition wise, force partition granule
5313 - output(nil), filter(nil)
532table_columns([{t1: ({t1: (t1.a, t1.b)})}]),
533update([t1.b=column_conv(INT,PS:(11,0),NULL,cast(t1.b + 1, INT(-1, 0)))])
5344 - output([t1.a], [t1.b]), filter(nil), rowset=16
535conds(nil), nl_params_([t1.a(:0)]), use_batch=true
5365 - output([t1.a], [t1.b]), filter(nil), rowset=16
537access([t1.a], [t1.b]), partitions(p[0-2])
538is_index_back=false, is_global_index=false,
539range_key([t1.a]), range(MIN ; MAX)always true
5406 - output(nil), filter(nil), rowset=16
541access([GROUP_ID]), partitions(p[0-2])
542is_index_back=false, is_global_index=false,
543range_key([t2.a]), range(MIN ; MAX),
544range_cond([:0 = t2.a])
545update /*+use_nl(t1, t2), leading(t1)*/ t1 set b=b+1 where a in (select a from t2);
546EXPLAIN BASIC select * from t1;
547Query Plan
548=======================================
549|ID|OPERATOR |NAME |
550---------------------------------------
551|0 |PX COORDINATOR | |
552|1 |└─EXCHANGE OUT DISTR |:EX10000|
553|2 | └─PX PARTITION ITERATOR| |
554|3 | └─TABLE FULL SCAN |t1 |
555=======================================
556Outputs & filters:
557-------------------------------------
5580 - output([INTERNAL_FUNCTION(t1.a, t1.b)]), filter(nil), rowset=16
5591 - output([INTERNAL_FUNCTION(t1.a, t1.b)]), filter(nil), rowset=16
560dop=1
5612 - output([t1.a], [t1.b]), filter(nil), rowset=16
562force partition granule
5633 - output([t1.a], [t1.b]), filter(nil), rowset=16
564access([t1.a], [t1.b]), partitions(p[0-2])
565is_index_back=false, is_global_index=false,
566range_key([t1.a]), range(MIN ; MAX)always true
567select * from t1;
568+---+------+
569| a | b |
570+---+------+
571| 3 | 3 |
572| 1 | 1 |
573| 4 | 4 |
574| 2 | 2 |
575| 5 | 5 |
576+---+------+
577drop table t1, t2;
578
579CREATE TABLE t1
580(
581place_id int (10) unsigned NOT NULL,
582shows int(10) unsigned DEFAULT '0' NOT NULL,
583ishows int(10) unsigned DEFAULT '0' NOT NULL,
584ushows int(10) unsigned DEFAULT '0' NOT NULL,
585clicks int(10) unsigned DEFAULT '0' NOT NULL,
586iclicks int(10) unsigned DEFAULT '0' NOT NULL,
587uclicks int(10) unsigned DEFAULT '0' NOT NULL,
588ts timestamp,
589PRIMARY KEY (place_id,ts)
590);
591
592EXPLAIN BASIC INSERT INTO t1 (place_id,shows,ishows,ushows,clicks,iclicks,uclicks,ts)
593VALUES (1,0,0,0,0,0,0,20000928174434);
594Query Plan
595============================
596|ID|OPERATOR |NAME|
597----------------------------
598|0 |DISTRIBUTED INSERT| |
599|1 |└─EXPRESSION | |
600============================
601Outputs & filters:
602-------------------------------------
6030 - output(nil), filter(nil)
604columns([{t1: ({t1: (t1.place_id, t1.ts, t1.shows, t1.ishows, t1.ushows, t1.clicks, t1.iclicks, t1.uclicks)})}]),
605column_values([column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.place_id)], [column_conv(TIMESTAMP,PS:(19,0),NOT NULL,timestamp_nvl(__values.ts,
606cast(current_timestamp(), TIMESTAMP(19, 0))))], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.shows)], [column_conv(INT UNSIGNED,PS:(10,0),NOT
607NULL,__values.ishows)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.ushows)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.clicks)],
608[column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.iclicks)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.uclicks)])
6091 - output([__values.place_id], [__values.shows], [__values.ishows], [__values.ushows], [__values.clicks], [__values.iclicks], [__values.uclicks], [__values.ts]), filter(nil)
610values({1, 0, 0, 0, 0, 0, 0, 20000928174434})
611INSERT INTO t1 (place_id,shows,ishows,ushows,clicks,iclicks,uclicks,ts)
612VALUES (1,0,0,0,0,0,0,20000928174434);
613EXPLAIN BASIC UPDATE t1 SET shows=shows+1,ishows=ishows+1,ushows=ushows+1,clicks=clicks+1,iclicks=iclicks+1,uclicks=uclicks+1 WHERE place_id=1 AND ts>="2000-09-28 00:00:00";
614Query Plan
615============================
616|ID|OPERATOR |NAME|
617----------------------------
618|0 |UPDATE | |
619|1 |└─TABLE RANGE SCAN|t1 |
620============================
621Outputs & filters:
622-------------------------------------
6230 - output(nil), filter(nil)
624table_columns([{t1: ({t1: (t1.place_id, t1.ts, t1.shows, t1.ishows, t1.ushows, t1.clicks, t1.iclicks, t1.uclicks)})}]),
625update([t1.shows=column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,cast(t1.shows + 1, INT UNSIGNED(-1, 0)))], [t1.ishows=column_conv(INT UNSIGNED,PS:(10,
6260),NOT NULL,cast(t1.ishows + 1, INT UNSIGNED(-1, 0)))], [t1.ushows=column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,cast(t1.ushows + 1, INT UNSIGNED(-1, 0)))],
627[t1.clicks=column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,cast(t1.clicks + 1, INT UNSIGNED(-1, 0)))], [t1.iclicks=column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,
628cast(t1.iclicks + 1, INT UNSIGNED(-1, 0)))], [t1.uclicks=column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,cast(t1.uclicks + 1, INT UNSIGNED(-1, 0)))], [t1.ts=column_conv(TIMESTAMP,
629PS:(19,0),NOT NULL,cast(current_timestamp(), TIMESTAMP(19, 0)))])
6301 - output([t1.place_id], [t1.ts], [t1.shows], [t1.ishows], [t1.ushows], [t1.clicks], [t1.iclicks], [t1.uclicks]), filter(nil), rowset=16
631access([t1.place_id], [t1.ts], [t1.shows], [t1.ishows], [t1.ushows], [t1.clicks], [t1.iclicks], [t1.uclicks]), partitions(p0)
632is_index_back=false, is_global_index=false,
633range_key([t1.place_id], [t1.ts]), range[1,2000-09-27 16:00:00.000000 ; 1,MAX),
634range_cond([t1.place_id = 1], [t1.ts >= cast('2000-09-28 00:00:00', TIMESTAMP(-1, -1))])
635UPDATE t1 SET shows=shows+1,ishows=ishows+1,ushows=ushows+1,clicks=clicks+1,iclicks=iclicks+1,uclicks=uclicks+1 WHERE place_id=1 AND ts>="2000-09-28 00:00:00";
636EXPLAIN BASIC select place_id,shows from t1;
637Query Plan
638=========================
639|ID|OPERATOR |NAME|
640-------------------------
641|0 |TABLE FULL SCAN|t1 |
642=========================
643Outputs & filters:
644-------------------------------------
6450 - output([t1.place_id], [t1.shows]), filter(nil), rowset=16
646access([t1.place_id], [t1.shows]), partitions(p0)
647is_index_back=false, is_global_index=false,
648range_key([t1.place_id], [t1.ts]), range(MIN,MIN ; MAX,MAX)always true
649select place_id,shows from t1;
650+----------+-------+
651| place_id | shows |
652+----------+-------+
653| 1 | 1 |
654+----------+-------+
655drop table t1;
656
657CREATE TABLE t1 (
658lfdnr int(10) unsigned NOT NULL default '0',
659ticket int(10) unsigned NOT NULL default '0',
660client varchar(255) NOT NULL default '',
661replyto varchar(255) NOT NULL default '',
662subject varchar(100) NOT NULL default '',
663timestamp int(10) unsigned NOT NULL default '0',
664tstamp timestamp NOT NULL,
665status int(3) NOT NULL default '0',
666type varchar(15) NOT NULL default '',
667assignment int(10) unsigned NOT NULL default '0',
668fupcount int(4) unsigned NOT NULL default '0',
669parent int(10) unsigned NOT NULL default '0',
670activity int(10) unsigned NOT NULL default '0',
671priority tinyint(1) unsigned NOT NULL default '1',
672cc varchar(255) NOT NULL default '',
673bcc varchar(255) NOT NULL default '',
674body varchar(255) NOT NULL,
675comment varchar(255),
676header varchar(255),
677PRIMARY KEY (lfdnr),
678KEY k1 (timestamp),
679KEY k2 (type),
680KEY k3 (parent),
681KEY k4 (assignment),
682KEY ticket (ticket)
683) ;
684
685EXPLAIN BASIC INSERT INTO t1 VALUES (773,773,'','','',980257344,20010318180652,0,'Open',10,0,0,0,1,'','','','','');
686Query Plan
687============================
688|ID|OPERATOR |NAME|
689----------------------------
690|0 |DISTRIBUTED INSERT| |
691|1 |└─EXPRESSION | |
692============================
693Outputs & filters:
694-------------------------------------
6950 - output(nil), filter(nil)
696columns([{t1: ({t1: (t1.lfdnr, t1.ticket, t1.client, t1.replyto, t1.subject, t1.timestamp, t1.tstamp, t1.status, t1.type, t1.assignment, t1.fupcount,
697t1.parent, t1.activity, t1.priority, t1.cc, t1.bcc, t1.body, t1.comment, t1.header)})}]),
698column_values([column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.lfdnr)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.ticket)], [column_conv(VARCHAR,
699utf8mb4_general_ci,length:255,NOT NULL,__values.client)], [column_conv(VARCHAR,utf8mb4_general_ci,length:255,NOT NULL,__values.replyto)], [column_conv(VARCHAR,
700utf8mb4_general_ci,length:100,NOT NULL,__values.subject)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.timestamp)], [column_conv(TIMESTAMP,PS:(19,
7010),NOT NULL,timestamp_nvl(__values.tstamp, cast(current_timestamp(), TIMESTAMP(19, 0))))], [column_conv(INT,PS:(3,0),NOT NULL,__values.status)], [column_conv(VARCHAR,
702utf8mb4_general_ci,length:15,NOT NULL,__values.type)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.assignment)], [column_conv(INT UNSIGNED,PS:(4,
7030),NOT NULL,__values.fupcount)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.parent)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.activity)],
704[column_conv(TINYINT UNSIGNED,PS:(1,0),NOT NULL,__values.priority)], [column_conv(VARCHAR,utf8mb4_general_ci,length:255,NOT NULL,__values.cc)], [column_conv(VARCHAR,
705utf8mb4_general_ci,length:255,NOT NULL,__values.bcc)], [column_conv(VARCHAR,utf8mb4_general_ci,length:255,NOT NULL,__values.body)], [column_conv(VARCHAR,
706utf8mb4_general_ci,length:255,NULL,__values.comment)], [column_conv(VARCHAR,utf8mb4_general_ci,length:255,NULL,__values.header)])
7071 - output([__values.lfdnr], [__values.ticket], [__values.client], [__values.replyto], [__values.subject], [__values.timestamp], [__values.tstamp], [__values.status],
708[__values.type], [__values.assignment], [__values.fupcount], [__values.parent], [__values.activity], [__values.priority], [__values.cc], [__values.bcc],
709[__values.body], [__values.comment], [__values.header]), filter(nil)
710values({773, 773, '', '', '', 980257344, 20010318180652, 0, 'Open', 10, 0, 0, 0, 1, '', '', '', '', ''})
711INSERT INTO t1 VALUES (773,773,'','','',980257344,20010318180652,0,'Open',10,0,0,0,1,'','','','','');
712
713alter table t1 change lfdnr lfdnr int(10) unsigned not null auto_increment;
714EXPLAIN BASIC update t1 set status=1 where type='Open';
715Query Plan
716==============================
717|ID|OPERATOR |NAME |
718------------------------------
719|0 |UPDATE | |
720|1 |└─TABLE RANGE SCAN|t1(k2)|
721==============================
722Outputs & filters:
723-------------------------------------
7240 - output(nil), filter(nil)
725table_columns([{t1: ({t1: (t1.lfdnr, t1.ticket, t1.client, t1.replyto, t1.subject, t1.timestamp, t1.tstamp, t1.status, t1.type, t1.assignment, t1.fupcount,
726t1.parent, t1.activity, t1.priority, t1.cc, t1.bcc, t1.body, t1.comment, t1.header)})}]),
727update([t1.status=column_conv(INT,PS:(3,0),NOT NULL,cast(1, INT(-1, 0)))], [t1.tstamp=column_conv(TIMESTAMP,PS:(19,0),NOT NULL,cast(current_timestamp(),
728TIMESTAMP(19, 0)))])
7291 - output([t1.lfdnr], [t1.status], [t1.tstamp], [t1.ticket], [t1.client], [t1.replyto], [t1.subject], [t1.timestamp], [t1.type], [t1.assignment], [t1.fupcount],
730[t1.parent], [t1.activity], [t1.priority], [t1.cc], [t1.bcc], [t1.body], [t1.comment], [t1.header]), filter(nil), rowset=16
731access([t1.lfdnr], [t1.status], [t1.tstamp], [t1.ticket], [t1.client], [t1.replyto], [t1.subject], [t1.timestamp], [t1.type], [t1.assignment], [t1.fupcount],
732[t1.parent], [t1.activity], [t1.priority], [t1.cc], [t1.bcc], [t1.body], [t1.comment], [t1.header]), partitions(p0)
733is_index_back=true, is_global_index=false,
734range_key([t1.type], [t1.lfdnr]), range(Open,MIN ; Open,MAX),
735range_cond([t1.type = 'Open'])
736update t1 set status=1 where type='Open';
737EXPLAIN BASIC select status from t1;
738Query Plan
739=========================
740|ID|OPERATOR |NAME|
741-------------------------
742|0 |TABLE FULL SCAN|t1 |
743=========================
744Outputs & filters:
745-------------------------------------
7460 - output([t1.status]), filter(nil), rowset=16
747access([t1.status]), partitions(p0)
748is_index_back=false, is_global_index=false,
749range_key([t1.lfdnr]), range(MIN ; MAX)always true
750select status from t1;
751+--------+
752| status |
753+--------+
754| 1 |
755+--------+
756drop table t1;
757
758create table t1 (a int not null, b int not null, key (a));
759EXPLAIN BASIC insert into t1 values (1,1),(1,2),(1,3),(3,1),(3,2),(3,3),(3,1),(3,2),(3,3),(2,1),(2,2),(2,3);
760Query Plan
761============================
762|ID|OPERATOR |NAME|
763----------------------------
764|0 |DISTRIBUTED INSERT| |
765|1 |└─EXPRESSION | |
766============================
767Outputs & filters:
768-------------------------------------
7690 - output(nil), filter(nil)
770columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b)})}]),
771column_values([T_HIDDEN_PK], [column_conv(INT,PS:(11,0),NOT NULL,__values.a)], [column_conv(INT,PS:(11,0),NOT NULL,__values.b)])
7721 - output([__values.a], [__values.b]), filter(nil)
773values({1, 1}, {1, 2}, {1, 3}, {3, 1}, {3, 2}, {3, 3}, {3, 1}, {3, 2}, {3, 3}, {2, 1}, {2, 2}, {2, 3})
774insert into t1 values (1,1),(1,2),(1,3),(3,1),(3,2),(3,3),(3,1),(3,2),(3,3),(2,1),(2,2),(2,3);
775SET @tmp=0;
776EXPLAIN BASIC update t1 set b=(@tmp:=@tmp+1) order by a;
777Query Plan
778=========================================
779|ID|OPERATOR |NAME|
780-----------------------------------------
781|0 |DISTRIBUTED UPDATE | |
782|1 |└─SORT | |
783|2 | └─DISTRIBUTED TABLE FULL SCAN|t1 |
784=========================================
785Outputs & filters:
786-------------------------------------
7870 - output(nil), filter(nil)
788table_columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b)})}]),
789update([t1.b=column_conv(INT,PS:(11,0),NOT NULL,cast((T_OP_ASSIGN, 'tmp', ('tmp') + 1), INT(-1, 0)))])
7901 - output([t1.__pk_increment], [t1.a], [t1.b]), filter(nil)
791sort_keys([t1.a, ASC])
7922 - output([t1.__pk_increment], [t1.b], [t1.a]), filter(nil)
793access([t1.__pk_increment], [t1.b], [t1.a]), partitions(p0)
794is_index_back=false, is_global_index=false,
795range_key([t1.__pk_increment]), range(MIN ; MAX)always true
796update t1 set b=(@tmp:=@tmp+1) order by a;
797EXPLAIN BASIC update /*+index(t1 a)*/ t1 set b=99 where a=1 order by b asc limit 1;
798Query Plan
799===============================
800|ID|OPERATOR |NAME |
801-------------------------------
802|0 |UPDATE | |
803|1 |└─TOP-N SORT | |
804|2 | └─TABLE RANGE SCAN|t1(a)|
805===============================
806Outputs & filters:
807-------------------------------------
8080 - output(nil), filter(nil)
809table_columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b)})}]),
810update([t1.b=column_conv(INT,PS:(11,0),NOT NULL,cast(99, INT(-1, 0)))])
8111 - output([t1.__pk_increment], [t1.a], [t1.b]), filter(nil), rowset=16
812sort_keys([t1.b, ASC]), topn(1)
8132 - output([t1.__pk_increment], [t1.b], [t1.a]), filter(nil), rowset=16
814access([t1.__pk_increment], [t1.b], [t1.a]), partitions(p0)
815is_index_back=true, is_global_index=false,
816range_key([t1.a], [t1.__pk_increment]), range(1,MIN ; 1,MAX),
817range_cond([t1.a = 1])
818update /*+index(t1 a)*/ t1 set b=99 where a=1 order by b asc limit 1;
819EXPLAIN BASIC select * from t1 order by a,b;
820Query Plan
821===========================
822|ID|OPERATOR |NAME|
823---------------------------
824|0 |SORT | |
825|1 |└─TABLE FULL SCAN|t1 |
826===========================
827Outputs & filters:
828-------------------------------------
8290 - output([t1.a], [t1.b]), filter(nil), rowset=16
830sort_keys([t1.a, ASC], [t1.b, ASC])
8311 - output([t1.a], [t1.b]), filter(nil), rowset=16
832access([t1.a], [t1.b]), partitions(p0)
833is_index_back=false, is_global_index=false,
834range_key([t1.__pk_increment]), range(MIN ; MAX)always true
835select * from t1 order by a,b;
836+---+----+
837| a | b |
838+---+----+
839| 1 | 2 |
840| 1 | 3 |
841| 1 | 99 |
842| 2 | 4 |
843| 2 | 5 |
844| 2 | 6 |
845| 3 | 7 |
846| 3 | 8 |
847| 3 | 9 |
848| 3 | 10 |
849| 3 | 11 |
850| 3 | 12 |
851+---+----+
852EXPLAIN BASIC update t1 set b=100 where a=1 order by b desc limit 2;
853Query Plan
854===============================
855|ID|OPERATOR |NAME |
856-------------------------------
857|0 |UPDATE | |
858|1 |└─TOP-N SORT | |
859|2 | └─TABLE RANGE SCAN|t1(a)|
860===============================
861Outputs & filters:
862-------------------------------------
8630 - output(nil), filter(nil)
864table_columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b)})}]),
865update([t1.b=column_conv(INT,PS:(11,0),NOT NULL,cast(100, INT(-1, 0)))])
8661 - output([t1.__pk_increment], [t1.a], [t1.b]), filter(nil), rowset=16
867sort_keys([t1.b, DESC]), topn(2)
8682 - output([t1.__pk_increment], [t1.b], [t1.a]), filter(nil), rowset=16
869access([t1.__pk_increment], [t1.b], [t1.a]), partitions(p0)
870is_index_back=true, is_global_index=false,
871range_key([t1.a], [t1.__pk_increment]), range(1,MIN ; 1,MAX),
872range_cond([t1.a = 1])
873update t1 set b=100 where a=1 order by b desc limit 2;
874EXPLAIN BASIC update t1 set a=a+10+b where a=1 order by b;
875Query Plan
876===============================
877|ID|OPERATOR |NAME |
878-------------------------------
879|0 |UPDATE | |
880|1 |└─SORT | |
881|2 | └─TABLE RANGE SCAN|t1(a)|
882===============================
883Outputs & filters:
884-------------------------------------
8850 - output(nil), filter(nil)
886table_columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b)})}]),
887update([t1.a=column_conv(INT,PS:(11,0),NOT NULL,cast(cast(1, INT(11, 0)) + 10 + t1.b, INT(-1, 0)))])
8881 - output([t1.__pk_increment], [t1.a], [t1.b]), filter(nil), rowset=16
889sort_keys([t1.b, ASC])
8902 - output([t1.__pk_increment], [t1.a], [t1.b]), filter(nil), rowset=16
891access([t1.__pk_increment], [t1.a], [t1.b]), partitions(p0)
892is_index_back=true, is_global_index=false,
893range_key([t1.a], [t1.__pk_increment]), range(1,MIN ; 1,MAX),
894range_cond([t1.a = 1])
895update t1 set a=a+10+b where a=1 order by b;
896EXPLAIN BASIC select * from t1 order by a,b;
897Query Plan
898===========================
899|ID|OPERATOR |NAME|
900---------------------------
901|0 |SORT | |
902|1 |└─TABLE FULL SCAN|t1 |
903===========================
904Outputs & filters:
905-------------------------------------
9060 - output([t1.a], [t1.b]), filter(nil), rowset=16
907sort_keys([t1.a, ASC], [t1.b, ASC])
9081 - output([t1.a], [t1.b]), filter(nil), rowset=16
909access([t1.a], [t1.b]), partitions(p0)
910is_index_back=false, is_global_index=false,
911range_key([t1.__pk_increment]), range(MIN ; MAX)always true
912select * from t1 order by a,b;
913+-----+-----+
914| a | b |
915+-----+-----+
916| 2 | 4 |
917| 2 | 5 |
918| 2 | 6 |
919| 3 | 7 |
920| 3 | 8 |
921| 3 | 9 |
922| 3 | 10 |
923| 3 | 11 |
924| 3 | 12 |
925| 13 | 2 |
926| 111 | 100 |
927| 111 | 100 |
928+-----+-----+
929create table t2 (a int not null, b int not null);
930EXPLAIN BASIC insert into t2 values (1,1),(1,2),(1,3);
931Query Plan
932============================
933|ID|OPERATOR |NAME|
934----------------------------
935|0 |DISTRIBUTED INSERT| |
936|1 |└─EXPRESSION | |
937============================
938Outputs & filters:
939-------------------------------------
9400 - output(nil), filter(nil)
941columns([{t2: ({t2: (t2.__pk_increment, t2.a, t2.b)})}]),
942column_values([T_HIDDEN_PK], [column_conv(INT,PS:(11,0),NOT NULL,__values.a)], [column_conv(INT,PS:(11,0),NOT NULL,__values.b)])
9431 - output([__values.a], [__values.b]), filter(nil)
944values({1, 1}, {1, 2}, {1, 3})
945insert into t2 values (1,1),(1,2),(1,3);
946EXPLAIN BASIC update t1 set b=(select distinct 1 from (select * from t2) a);
947Query Plan
948=============================
949|ID|OPERATOR |NAME|
950-----------------------------
951|0 |UPDATE | |
952|1 |└─SUBPLAN FILTER | |
953|2 | ├─TABLE FULL SCAN|t1 |
954|3 | └─TABLE FULL SCAN|t2 |
955=============================
956Outputs & filters:
957-------------------------------------
9580 - output(nil), filter(nil)
959table_columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b)})}]),
960update([t1.b=column_conv(INT,PS:(11,0),NOT NULL,cast(:0, INT(-1, 0)))])
9611 - output([t1.__pk_increment], [t1.a], [t1.b], [:0]), filter(nil), rowset=16
962exec_params_(nil), onetime_exprs_([subquery(1)(:0)]), init_plan_idxs_(nil), use_batch=false
9632 - output([t1.__pk_increment], [t1.b], [t1.a]), filter(nil), rowset=16
964access([t1.__pk_increment], [t1.b], [t1.a]), partitions(p0)
965is_index_back=false, is_global_index=false,
966range_key([t1.__pk_increment]), range(MIN ; MAX)always true
9673 - output([1]), filter(nil), rowset=16
968access(nil), partitions(p0)
969limit(1), offset(nil), is_index_back=false, is_global_index=false,
970range_key([t2.__pk_increment]), range(MIN ; MAX)always true
971update t1 set b=(select distinct 1 from (select * from t2) a);
972drop table t1,t2;
973
974CREATE TABLE t1 (
975`id_param` smallint(3) unsigned NOT NULL default '0',
976`nom_option` char(40) NOT NULL default '',
977`valid` tinyint(1) NOT NULL default '0',
978KEY `id_param` (`id_param`,`nom_option`)
979);
980
981EXPLAIN BASIC INSERT INTO t1 (id_param,nom_option,valid) VALUES (185,'600x1200',1);
982Query Plan
983============================
984|ID|OPERATOR |NAME|
985----------------------------
986|0 |DISTRIBUTED INSERT| |
987|1 |└─EXPRESSION | |
988============================
989Outputs & filters:
990-------------------------------------
9910 - output(nil), filter(nil)
992columns([{t1: ({t1: (t1.__pk_increment, t1.id_param, t1.nom_option, t1.valid)})}]),
993column_values([T_HIDDEN_PK], [column_conv(SMALLINT UNSIGNED,PS:(3,0),NOT NULL,__values.id_param)], [column_conv(CHAR,utf8mb4_general_ci,length:40,
994NOT NULL,__values.nom_option)], [column_conv(TINYINT,PS:(1,0),NOT NULL,__values.valid)])
9951 - output([__values.id_param], [__values.nom_option], [__values.valid]), filter(nil)
996values({185, '600x1200', 1})
997INSERT INTO t1 (id_param,nom_option,valid) VALUES (185,'600x1200',1);
998
999EXPLAIN BASIC UPDATE t1 SET nom_option='test' WHERE id_param=185 AND nom_option='600x1200' AND valid=1 LIMIT 1;
1000Query Plan
1001====================================
1002|ID|OPERATOR |NAME |
1003------------------------------------
1004|0 |UPDATE | |
1005|1 |└─TABLE RANGE SCAN|t1(id_param)|
1006====================================
1007Outputs & filters:
1008-------------------------------------
10090 - output(nil), filter(nil)
1010table_columns([{t1: ({t1: (t1.__pk_increment, t1.id_param, t1.nom_option, t1.valid)})}]),
1011update([t1.nom_option=column_conv(CHAR,utf8mb4_general_ci,length:40,NOT NULL,cast(inner_trim(2, cast(' ', VARCHAR(1048576)), 'test'), CHAR(1048576)))])
10121 - output([t1.__pk_increment], [t1.nom_option], [t1.id_param], [t1.valid]), filter([t1.valid = 1]), rowset=16
1013access([t1.__pk_increment], [t1.nom_option], [t1.id_param], [t1.valid]), partitions(p0)
1014limit(1), offset(nil), is_index_back=true, is_global_index=false, filter_before_indexback[false],
1015range_key([t1.id_param], [t1.nom_option], [t1.__pk_increment]), range(185,600x1200,MIN ; 185,600x1200,MAX),
1016range_cond([t1.id_param = 185], [t1.nom_option = '600x1200'])
1017UPDATE t1 SET nom_option='test' WHERE id_param=185 AND nom_option='600x1200' AND valid=1 LIMIT 1;
1018EXPLAIN BASIC select * from t1;
1019Query Plan
1020=========================
1021|ID|OPERATOR |NAME|
1022-------------------------
1023|0 |TABLE FULL SCAN|t1 |
1024=========================
1025Outputs & filters:
1026-------------------------------------
10270 - output([t1.id_param], [t1.nom_option], [t1.valid]), filter(nil), rowset=16
1028access([t1.id_param], [t1.nom_option], [t1.valid]), partitions(p0)
1029is_index_back=false, is_global_index=false,
1030range_key([t1.__pk_increment]), range(MIN ; MAX)always true
1031select * from t1;
1032+----------+------------+-------+
1033| id_param | nom_option | valid |
1034+----------+------------+-------+
1035| 185 | test | 1 |
1036+----------+------------+-------+
1037drop table t1;
1038
1039create table t1 (F1 VARCHAR(30), F2 VARCHAR(30), F3 VARCHAR(30), cnt int, groupid int, KEY groupid_index (groupid));
1040
1041EXPLAIN BASIC insert into t1 (F1,F2,F3,cnt,groupid) values ('0','0','0',1,6),
1042('0','1','2',1,5), ('0','2','0',1,3), ('1','0','1',1,2),
1043('1','2','1',1,1), ('1','2','2',1,1), ('2','0','1',2,4),
1044('2','2','0',1,7);
1045Query Plan
1046============================
1047|ID|OPERATOR |NAME|
1048----------------------------
1049|0 |DISTRIBUTED INSERT| |
1050|1 |└─EXPRESSION | |
1051============================
1052Outputs & filters:
1053-------------------------------------
10540 - output(nil), filter(nil)
1055columns([{t1: ({t1: (t1.__pk_increment, t1.F1, t1.F2, t1.F3, t1.cnt, t1.groupid)})}]),
1056column_values([T_HIDDEN_PK], [column_conv(VARCHAR,utf8mb4_general_ci,length:30,NULL,__values.F1)], [column_conv(VARCHAR,utf8mb4_general_ci,length:30,
1057NULL,__values.F2)], [column_conv(VARCHAR,utf8mb4_general_ci,length:30,NULL,__values.F3)], [column_conv(INT,PS:(11,0),NULL,__values.cnt)], [column_conv(INT,
1058PS:(11,0),NULL,__values.groupid)])
10591 - output([__values.F1], [__values.F2], [__values.F3], [__values.cnt], [__values.groupid]), filter(nil)
1060values({'0', '0', '0', 1, 6}, {'0', '1', '2', 1, 5}, {'0', '2', '0', 1, 3}, {'1', '0', '1', 1, 2}, {'1', '2', '1', 1, 1}, {'1', '2', '2', 1, 1}, {'2',
1061'0', '1', 2, 4}, {'2', '2', '0', 1, 7})
1062insert into t1 (F1,F2,F3,cnt,groupid) values ('0','0','0',1,6),
1063('0','1','2',1,5), ('0','2','0',1,3), ('1','0','1',1,2),
1064('1','2','1',1,1), ('1','2','2',1,1), ('2','0','1',2,4),
1065('2','2','0',1,7);
1066EXPLAIN BASIC delete from m1 using t1 m1,t1 m2 where m1.groupid=m2.groupid and (m1.cnt < m2.cnt or m1.cnt=m2.cnt and m1.F3>m2.F3);
1067Query Plan
1068=============================
1069|ID|OPERATOR |NAME|
1070-----------------------------
1071|0 |DELETE | |
1072|1 |└─HASH JOIN | |
1073|2 | ├─TABLE FULL SCAN|m2 |
1074|3 | └─TABLE FULL SCAN|m1 |
1075=============================
1076Outputs & filters:
1077-------------------------------------
10780 - output(nil), filter(nil)
1079table_columns([{m1: ({t1: (m1.__pk_increment, m1.F1, m1.F2, m1.F3, m1.cnt, m1.groupid)}), hash_distinct}])
10801 - output([m1.__pk_increment], [m1.F1], [m1.F2], [m1.F3], [m1.cnt], [m1.groupid]), filter(nil), rowset=16
1081equal_conds([m1.groupid = m2.groupid]), other_conds([m1.cnt < m2.cnt OR m1.cnt = m2.cnt AND m1.F3 > m2.F3])
10822 - output([m2.groupid], [m2.cnt], [m2.F3]), filter(nil), rowset=16
1083access([m2.groupid], [m2.cnt], [m2.F3]), partitions(p0)
1084is_index_back=false, is_global_index=false,
1085range_key([m2.__pk_increment]), range(MIN ; MAX)always true
10863 - output([m1.__pk_increment], [m1.F1], [m1.F2], [m1.F3], [m1.cnt], [m1.groupid]), filter(nil), rowset=16
1087access([m1.__pk_increment], [m1.F1], [m1.F2], [m1.F3], [m1.cnt], [m1.groupid]), partitions(p0)
1088is_index_back=false, is_global_index=false,
1089range_key([m1.__pk_increment]), range(MIN ; MAX)always true
1090delete from m1 using t1 m1,t1 m2 where m1.groupid=m2.groupid and (m1.cnt < m2.cnt or m1.cnt=m2.cnt and m1.F3>m2.F3);
1091EXPLAIN BASIC select * from t1;
1092Query Plan
1093=========================
1094|ID|OPERATOR |NAME|
1095-------------------------
1096|0 |TABLE FULL SCAN|t1 |
1097=========================
1098Outputs & filters:
1099-------------------------------------
11000 - output([t1.F1], [t1.F2], [t1.F3], [t1.cnt], [t1.groupid]), filter(nil), rowset=16
1101access([t1.F1], [t1.F2], [t1.F3], [t1.cnt], [t1.groupid]), partitions(p0)
1102is_index_back=false, is_global_index=false,
1103range_key([t1.__pk_increment]), range(MIN ; MAX)always true
1104select * from t1;
1105+------+------+------+------+---------+
1106| F1 | F2 | F3 | cnt | groupid |
1107+------+------+------+------+---------+
1108| 0 | 0 | 0 | 1 | 6 |
1109| 0 | 1 | 2 | 1 | 5 |
1110| 0 | 2 | 0 | 1 | 3 |
1111| 1 | 0 | 1 | 1 | 2 |
1112| 1 | 2 | 1 | 1 | 1 |
1113| 2 | 0 | 1 | 2 | 4 |
1114| 2 | 2 | 0 | 1 | 7 |
1115+------+------+------+------+---------+
1116drop table t1;
1117
1118
1119CREATE TABLE t1 (
1120`colA` int(10) unsigned NOT NULL auto_increment,
1121`colB` int(11) NOT NULL default '0',
1122PRIMARY KEY (`colA`)
1123);
1124EXPLAIN BASIC INSERT INTO t1 VALUES (4433,5424);
1125Query Plan
1126============================
1127|ID|OPERATOR |NAME|
1128----------------------------
1129|0 |DISTRIBUTED INSERT| |
1130|1 |└─EXPRESSION | |
1131============================
1132Outputs & filters:
1133-------------------------------------
11340 - output(nil), filter(nil)
1135columns([{t1: ({t1: (t1.colA, t1.colB)})}]),
1136column_values([column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,t1.colA.nextval(column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colA)))], [column_conv(INT,
1137PS:(11,0),NOT NULL,__values.colB)])
11381 - output([__values.colA], [__values.colB]), filter(nil)
1139values({4433, 5424})
1140INSERT INTO t1 VALUES (4433,5424);
1141CREATE TABLE t2 (
1142`colC` int(10) unsigned NOT NULL default '0',
1143`colA` int(10) unsigned NOT NULL default '0',
1144`colD` int(10) unsigned NOT NULL default '0',
1145`colE` int(10) unsigned NOT NULL default '0',
1146`colF` int(10) unsigned NOT NULL default '0',
1147PRIMARY KEY (`colC`,`colA`,`colD`,`colE`)
1148);
1149EXPLAIN BASIC INSERT INTO t2 VALUES (3,4433,10005,495,500);
1150Query Plan
1151============================
1152|ID|OPERATOR |NAME|
1153----------------------------
1154|0 |DISTRIBUTED INSERT| |
1155|1 |└─EXPRESSION | |
1156============================
1157Outputs & filters:
1158-------------------------------------
11590 - output(nil), filter(nil)
1160columns([{t2: ({t2: (t2.colC, t2.colA, t2.colD, t2.colE, t2.colF)})}]),
1161column_values([column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colC)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colA)], [column_conv(INT
1162UNSIGNED,PS:(10,0),NOT NULL,__values.colD)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colE)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,
1163__values.colF)])
11641 - output([__values.colC], [__values.colA], [__values.colD], [__values.colE], [__values.colF]), filter(nil)
1165values({3, 4433, 10005, 495, 500})
1166INSERT INTO t2 VALUES (3,4433,10005,495,500);
1167EXPLAIN BASIC INSERT INTO t2 VALUES (3,4433,10005,496,500);
1168Query Plan
1169============================
1170|ID|OPERATOR |NAME|
1171----------------------------
1172|0 |DISTRIBUTED INSERT| |
1173|1 |└─EXPRESSION | |
1174============================
1175Outputs & filters:
1176-------------------------------------
11770 - output(nil), filter(nil)
1178columns([{t2: ({t2: (t2.colC, t2.colA, t2.colD, t2.colE, t2.colF)})}]),
1179column_values([column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colC)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colA)], [column_conv(INT
1180UNSIGNED,PS:(10,0),NOT NULL,__values.colD)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colE)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,
1181__values.colF)])
11821 - output([__values.colC], [__values.colA], [__values.colD], [__values.colE], [__values.colF]), filter(nil)
1183values({3, 4433, 10005, 496, 500})
1184INSERT INTO t2 VALUES (3,4433,10005,496,500);
1185EXPLAIN BASIC INSERT INTO t2 VALUES (3,4433,10009,494,500);
1186Query Plan
1187============================
1188|ID|OPERATOR |NAME|
1189----------------------------
1190|0 |DISTRIBUTED INSERT| |
1191|1 |└─EXPRESSION | |
1192============================
1193Outputs & filters:
1194-------------------------------------
11950 - output(nil), filter(nil)
1196columns([{t2: ({t2: (t2.colC, t2.colA, t2.colD, t2.colE, t2.colF)})}]),
1197column_values([column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colC)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colA)], [column_conv(INT
1198UNSIGNED,PS:(10,0),NOT NULL,__values.colD)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colE)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,
1199__values.colF)])
12001 - output([__values.colC], [__values.colA], [__values.colD], [__values.colE], [__values.colF]), filter(nil)
1201values({3, 4433, 10009, 494, 500})
1202INSERT INTO t2 VALUES (3,4433,10009,494,500);
1203EXPLAIN BASIC INSERT INTO t2 VALUES (3,4433,10011,494,500);
1204Query Plan
1205============================
1206|ID|OPERATOR |NAME|
1207----------------------------
1208|0 |DISTRIBUTED INSERT| |
1209|1 |└─EXPRESSION | |
1210============================
1211Outputs & filters:
1212-------------------------------------
12130 - output(nil), filter(nil)
1214columns([{t2: ({t2: (t2.colC, t2.colA, t2.colD, t2.colE, t2.colF)})}]),
1215column_values([column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colC)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colA)], [column_conv(INT
1216UNSIGNED,PS:(10,0),NOT NULL,__values.colD)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colE)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,
1217__values.colF)])
12181 - output([__values.colC], [__values.colA], [__values.colD], [__values.colE], [__values.colF]), filter(nil)
1219values({3, 4433, 10011, 494, 500})
1220INSERT INTO t2 VALUES (3,4433,10011,494,500);
1221EXPLAIN BASIC INSERT INTO t2 VALUES (3,4433,10005,497,500);
1222Query Plan
1223============================
1224|ID|OPERATOR |NAME|
1225----------------------------
1226|0 |DISTRIBUTED INSERT| |
1227|1 |└─EXPRESSION | |
1228============================
1229Outputs & filters:
1230-------------------------------------
12310 - output(nil), filter(nil)
1232columns([{t2: ({t2: (t2.colC, t2.colA, t2.colD, t2.colE, t2.colF)})}]),
1233column_values([column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colC)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colA)], [column_conv(INT
1234UNSIGNED,PS:(10,0),NOT NULL,__values.colD)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colE)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,
1235__values.colF)])
12361 - output([__values.colC], [__values.colA], [__values.colD], [__values.colE], [__values.colF]), filter(nil)
1237values({3, 4433, 10005, 497, 500})
1238INSERT INTO t2 VALUES (3,4433,10005,497,500);
1239EXPLAIN BASIC INSERT INTO t2 VALUES (3,4433,10013,489,500);
1240Query Plan
1241============================
1242|ID|OPERATOR |NAME|
1243----------------------------
1244|0 |DISTRIBUTED INSERT| |
1245|1 |└─EXPRESSION | |
1246============================
1247Outputs & filters:
1248-------------------------------------
12490 - output(nil), filter(nil)
1250columns([{t2: ({t2: (t2.colC, t2.colA, t2.colD, t2.colE, t2.colF)})}]),
1251column_values([column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colC)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colA)], [column_conv(INT
1252UNSIGNED,PS:(10,0),NOT NULL,__values.colD)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colE)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,
1253__values.colF)])
12541 - output([__values.colC], [__values.colA], [__values.colD], [__values.colE], [__values.colF]), filter(nil)
1255values({3, 4433, 10013, 489, 500})
1256INSERT INTO t2 VALUES (3,4433,10013,489,500);
1257EXPLAIN BASIC INSERT INTO t2 VALUES (3,4433,10005,494,500);
1258Query Plan
1259============================
1260|ID|OPERATOR |NAME|
1261----------------------------
1262|0 |DISTRIBUTED INSERT| |
1263|1 |└─EXPRESSION | |
1264============================
1265Outputs & filters:
1266-------------------------------------
12670 - output(nil), filter(nil)
1268columns([{t2: ({t2: (t2.colC, t2.colA, t2.colD, t2.colE, t2.colF)})}]),
1269column_values([column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colC)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colA)], [column_conv(INT
1270UNSIGNED,PS:(10,0),NOT NULL,__values.colD)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colE)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,
1271__values.colF)])
12721 - output([__values.colC], [__values.colA], [__values.colD], [__values.colE], [__values.colF]), filter(nil)
1273values({3, 4433, 10005, 494, 500})
1274INSERT INTO t2 VALUES (3,4433,10005,494,500);
1275EXPLAIN BASIC INSERT INTO t2 VALUES (3,4433,10005,493,500);
1276Query Plan
1277============================
1278|ID|OPERATOR |NAME|
1279----------------------------
1280|0 |DISTRIBUTED INSERT| |
1281|1 |└─EXPRESSION | |
1282============================
1283Outputs & filters:
1284-------------------------------------
12850 - output(nil), filter(nil)
1286columns([{t2: ({t2: (t2.colC, t2.colA, t2.colD, t2.colE, t2.colF)})}]),
1287column_values([column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colC)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colA)], [column_conv(INT
1288UNSIGNED,PS:(10,0),NOT NULL,__values.colD)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colE)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,
1289__values.colF)])
12901 - output([__values.colC], [__values.colA], [__values.colD], [__values.colE], [__values.colF]), filter(nil)
1291values({3, 4433, 10005, 493, 500})
1292INSERT INTO t2 VALUES (3,4433,10005,493,500);
1293EXPLAIN BASIC INSERT INTO t2 VALUES (3,4433,10005,492,500);
1294Query Plan
1295============================
1296|ID|OPERATOR |NAME|
1297----------------------------
1298|0 |DISTRIBUTED INSERT| |
1299|1 |└─EXPRESSION | |
1300============================
1301Outputs & filters:
1302-------------------------------------
13030 - output(nil), filter(nil)
1304columns([{t2: ({t2: (t2.colC, t2.colA, t2.colD, t2.colE, t2.colF)})}]),
1305column_values([column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colC)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colA)], [column_conv(INT
1306UNSIGNED,PS:(10,0),NOT NULL,__values.colD)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,__values.colE)], [column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,
1307__values.colF)])
13081 - output([__values.colC], [__values.colA], [__values.colD], [__values.colE], [__values.colF]), filter(nil)
1309values({3, 4433, 10005, 492, 500})
1310INSERT INTO t2 VALUES (3,4433,10005,492,500);
1311UPDATE t2,t1 set t2.colE = t2.colE + 1,colF=0 WHERE t1.colA = t2.colA AND (t1.colB & 4096) > 0 AND (colE + 1) < colF;
1312ERROR 23000: Duplicate entry '3-4433-10005-493' for key 'PRIMARY'
1313
1314EXPLAIN BASIC SELECT * FROM t2;
1315Query Plan
1316=========================
1317|ID|OPERATOR |NAME|
1318-------------------------
1319|0 |TABLE FULL SCAN|t2 |
1320=========================
1321Outputs & filters:
1322-------------------------------------
13230 - output([t2.colC], [t2.colA], [t2.colD], [t2.colE], [t2.colF]), filter(nil), rowset=16
1324access([t2.colC], [t2.colA], [t2.colD], [t2.colE], [t2.colF]), partitions(p0)
1325is_index_back=false, is_global_index=false,
1326range_key([t2.colC], [t2.colA], [t2.colD], [t2.colE]), range(MIN,MIN,MIN,MIN ; MAX,MAX,MAX,MAX)always true
1327SELECT * FROM t2;
1328+------+------+-------+------+------+
1329| colC | colA | colD | colE | colF |
1330+------+------+-------+------+------+
1331| 3 | 4433 | 10005 | 492 | 500 |
1332| 3 | 4433 | 10005 | 493 | 500 |
1333| 3 | 4433 | 10005 | 494 | 500 |
1334| 3 | 4433 | 10005 | 495 | 500 |
1335| 3 | 4433 | 10005 | 496 | 500 |
1336| 3 | 4433 | 10005 | 497 | 500 |
1337| 3 | 4433 | 10009 | 494 | 500 |
1338| 3 | 4433 | 10011 | 494 | 500 |
1339| 3 | 4433 | 10013 | 489 | 500 |
1340+------+------+-------+------+------+
1341DROP TABLE t1;
1342DROP TABLE t2;
1343
1344create table t1 (c1 int, c2 char(6), c3 int);
1345create table t2 (c1 int, c2 char(6));
1346EXPLAIN BASIC insert into t1 values (1, "t1c2-1", 10), (2, "t1c2-2", 20);
1347Query Plan
1348============================
1349|ID|OPERATOR |NAME|
1350----------------------------
1351|0 |DISTRIBUTED INSERT| |
1352|1 |└─EXPRESSION | |
1353============================
1354Outputs & filters:
1355-------------------------------------
13560 - output(nil), filter(nil)
1357columns([{t1: ({t1: (t1.__pk_increment, t1.c1, t1.c2, t1.c3)})}]),
1358column_values([T_HIDDEN_PK], [column_conv(INT,PS:(11,0),NULL,__values.c1)], [column_conv(CHAR,utf8mb4_general_ci,length:6,NULL,__values.c2)], [column_conv(INT,
1359PS:(11,0),NULL,__values.c3)])
13601 - output([__values.c1], [__values.c2], [__values.c3]), filter(nil)
1361values({1, 't1c2-1', 10}, {2, 't1c2-2', 20})
1362insert into t1 values (1, "t1c2-1", 10), (2, "t1c2-2", 20);
1363EXPLAIN BASIC update t1 left join t2 on t1.c1 = t2.c1 set t2.c2 = "t2c2-1";
1364Query Plan
1365==================================
1366|ID|OPERATOR |NAME|
1367----------------------------------
1368|0 |UPDATE | |
1369|1 |└─HASH RIGHT OUTER JOIN | |
1370|2 | ├─TABLE FULL SCAN |t2 |
1371|3 | └─TABLE FULL SCAN |t1 |
1372==================================
1373Outputs & filters:
1374-------------------------------------
13750 - output(nil), filter(nil)
1376table_columns([{t2: ({t2: (t2.__pk_increment, t2.c1, t2.c2)}), hash_distinct}]),
1377update([t2.c2=column_conv(CHAR,utf8mb4_general_ci,length:6,NULL,cast(inner_trim(2, cast(' ', VARCHAR(1048576)), 't2c2-1'), CHAR(1048576)))])
13781 - output([t2.__pk_increment], [t2.c1], [t2.c2]), filter(nil), rowset=16
1379equal_conds([t1.c1 = t2.c1]), other_conds(nil)
13802 - output([t2.__pk_increment], [t2.c1], [t2.c2]), filter(nil), rowset=16
1381access([t2.__pk_increment], [t2.c1], [t2.c2]), partitions(p0)
1382is_index_back=false, is_global_index=false,
1383range_key([t2.__pk_increment]), range(MIN ; MAX)always true
13843 - output([t1.c1]), filter(nil), rowset=16
1385access([t1.c1]), partitions(p0)
1386is_index_back=false, is_global_index=false,
1387range_key([t1.__pk_increment]), range(MIN ; MAX)always true
1388update t1 left join t2 on t1.c1 = t2.c1 set t2.c2 = "t2c2-1";
1389EXPLAIN BASIC update t1 left join t2 on t1.c1 = t2.c1 set t2.c2 = "t2c2-1" where t1.c3 = 10;
1390Query Plan
1391==================================
1392|ID|OPERATOR |NAME|
1393----------------------------------
1394|0 |UPDATE | |
1395|1 |└─HASH RIGHT OUTER JOIN | |
1396|2 | ├─TABLE FULL SCAN |t2 |
1397|3 | └─TABLE FULL SCAN |t1 |
1398==================================
1399Outputs & filters:
1400-------------------------------------
14010 - output(nil), filter(nil)
1402table_columns([{t2: ({t2: (t2.__pk_increment, t2.c1, t2.c2)}), hash_distinct}]),
1403update([t2.c2=column_conv(CHAR,utf8mb4_general_ci,length:6,NULL,cast(inner_trim(2, cast(' ', VARCHAR(1048576)), 't2c2-1'), CHAR(1048576)))])
14041 - output([t2.__pk_increment], [t2.c1], [t2.c2]), filter(nil), rowset=16
1405equal_conds([t1.c1 = t2.c1]), other_conds(nil)
14062 - output([t2.__pk_increment], [t2.c1], [t2.c2]), filter(nil), rowset=16
1407access([t2.__pk_increment], [t2.c1], [t2.c2]), partitions(p0)
1408is_index_back=false, is_global_index=false,
1409range_key([t2.__pk_increment]), range(MIN ; MAX)always true
14103 - output([t1.c1]), filter([t1.c3 = 10]), rowset=16
1411access([t1.c1], [t1.c3]), partitions(p0)
1412is_index_back=false, is_global_index=false, filter_before_indexback[false],
1413range_key([t1.__pk_increment]), range(MIN ; MAX)always true
1414update t1 left join t2 on t1.c1 = t2.c1 set t2.c2 = "t2c2-1" where t1.c3 = 10;
1415drop table t1, t2;
1416
1417create table t1 (id int not null auto_increment primary key, id_str varchar(32));
1418EXPLAIN BASIC insert into t1 (id_str) values ("test");
1419Query Plan
1420============================
1421|ID|OPERATOR |NAME|
1422----------------------------
1423|0 |DISTRIBUTED INSERT| |
1424|1 |└─EXPRESSION | |
1425============================
1426Outputs & filters:
1427-------------------------------------
14280 - output(nil), filter(nil)
1429columns([{t1: ({t1: (t1.id, t1.id_str)})}]),
1430column_values([column_conv(INT,PS:(11,0),NOT NULL,cast(t1.id.nextval(), INT(-1, 0)))], [column_conv(VARCHAR,utf8mb4_general_ci,length:32,NULL,__values.id_str)])
14311 - output([__values.id_str]), filter(nil)
1432values({'test'})
1433insert into t1 (id_str) values ("test");
1434EXPLAIN BASIC update t1 set id_str = concat(id_str, id) where id = last_insert_id();
1435Query Plan
1436=====================
1437|ID|OPERATOR |NAME|
1438---------------------
1439|0 |UPDATE | |
1440|1 |└─TABLE GET|t1 |
1441=====================
1442Outputs & filters:
1443-------------------------------------
14440 - output(nil), filter(nil)
1445table_columns([{t1: ({t1: (t1.id, t1.id_str)})}]),
1446update([t1.id_str=column_conv(VARCHAR,utf8mb4_general_ci,length:32,NULL,concat(t1.id_str, cast(cast(last_insert_id(), INT(11, 0)), VARCHAR(1048576))))])
14471 - output([t1.id], [t1.id_str]), filter(nil), rowset=16
1448access([t1.id], [t1.id_str]), partitions(p0)
1449is_index_back=false, is_global_index=false,
1450range_key([t1.id]), range[1 ; 1],
1451range_cond([t1.id = last_insert_id()])
1452update t1 set id_str = concat(id_str, id) where id = last_insert_id();
1453EXPLAIN BASIC select * from t1;
1454Query Plan
1455=========================
1456|ID|OPERATOR |NAME|
1457-------------------------
1458|0 |TABLE FULL SCAN|t1 |
1459=========================
1460Outputs & filters:
1461-------------------------------------
14620 - output([t1.id], [t1.id_str]), filter(nil), rowset=16
1463access([t1.id], [t1.id_str]), partitions(p0)
1464is_index_back=false, is_global_index=false,
1465range_key([t1.id]), range(MIN ; MAX)always true
1466select * from t1;
1467+----+--------+
1468| id | id_str |
1469+----+--------+
1470| 1 | test1 |
1471+----+--------+
1472drop table t1;
1473
1474create table t1 (a int, b char(255), key(a, b(20)));
1475EXPLAIN BASIC insert into t1 values (0, '1');
1476Query Plan
1477============================
1478|ID|OPERATOR |NAME|
1479----------------------------
1480|0 |DISTRIBUTED INSERT| |
1481|1 |└─EXPRESSION | |
1482============================
1483Outputs & filters:
1484-------------------------------------
14850 - output(nil), filter(nil)
1486columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b, t1.__substr20_17)})}]),
1487column_values([T_HIDDEN_PK], [column_conv(INT,PS:(11,0),NULL,__values.a)], [column_conv(CHAR,utf8mb4_general_ci,length:255,NULL,__values.b)], [column_conv(CHAR,
1488utf8mb4_general_ci,length:20,NULL,column_conv(CHAR,utf8mb4_general_ci,length:20,NULL,cast(inner_trim(2, cast(' ', VARCHAR(1048576)), substr(inner_trim(2,
1489cast(' ', VARCHAR(1048576)), cast(column_conv(CHAR,utf8mb4_general_ci,length:255,NULL,__values.b), VARCHAR(1048576))), 1, 20)), CHAR(1048576))))])
14901 - output([__values.a], [__values.b]), filter(nil)
1491values({0, '1'})
1492insert into t1 values (0, '1');
1493EXPLAIN BASIC update /*+index(t1 a)*/ t1 set b = b + 1 where a = 0;
1494Query Plan
1495=============================
1496|ID|OPERATOR |NAME |
1497-----------------------------
1498|0 |UPDATE | |
1499|1 |└─TABLE RANGE SCAN|t1(a)|
1500=============================
1501Outputs & filters:
1502-------------------------------------
15030 - output(nil), filter(nil)
1504table_columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b, t1.__substr20_17)})}]),
1505update([t1.b=column_conv(CHAR,utf8mb4_general_ci,length:255,NULL,cast(inner_trim(2, cast(' ', VARCHAR(1048576)), cast(cast(t1.b, DOUBLE(-1, -1)) +
1506cast(1, DOUBLE(-1, -1)), VARCHAR(1048576))), CHAR(1048576)))], [t1.__substr20_17=column_conv(CHAR,utf8mb4_general_ci,length:20,NULL,column_conv(CHAR,utf8mb4_general_ci,
1507length:20,NULL,cast(inner_trim(2, cast(' ', VARCHAR(1048576)), substr(inner_trim(2, cast(' ', VARCHAR(1048576)), cast(column_conv(CHAR,utf8mb4_general_ci,
1508length:255,NULL,cast(inner_trim(2, cast(' ', VARCHAR(1048576)), cast(cast(t1.b, DOUBLE(-1, -1)) + cast(1, DOUBLE(-1, -1)), VARCHAR(1048576))), CHAR(1048576))),
1509VARCHAR(1048576))), 1, 20)), CHAR(1048576))))])
15101 - output([t1.__pk_increment], [t1.b], [column_conv(CHAR,utf8mb4_general_ci,length:20,NULL,cast(inner_trim(2, cast(' ', VARCHAR(1048576)), substr(inner_trim(2,
1511cast(' ', VARCHAR(1048576)), cast(t1.b, VARCHAR(1048576))), 1, 20)), CHAR(1048576)))], [t1.a]), filter(nil), rowset=16
1512access([t1.__pk_increment], [t1.b], [t1.a]), partitions(p0)
1513is_index_back=true, is_global_index=false,
1514range_key([t1.a], [t1.__substr20_17], [t1.__pk_increment]), range(0,MIN,MIN ; 0,MAX,MAX),
1515range_cond([t1.a = 0])
1516update /*+index(t1 a)*/ t1 set b = b + 1 where a = 0;
1517EXPLAIN BASIC select * from t1;
1518Query Plan
1519=========================
1520|ID|OPERATOR |NAME|
1521-------------------------
1522|0 |TABLE FULL SCAN|t1 |
1523=========================
1524Outputs & filters:
1525-------------------------------------
15260 - output([t1.a], [t1.b]), filter(nil), rowset=16
1527access([t1.b], [t1.a]), partitions(p0)
1528is_index_back=false, is_global_index=false,
1529range_key([t1.__pk_increment]), range(MIN ; MAX)always true
1530select * from t1;
1531+------+------+
1532| a | b |
1533+------+------+
1534| 0 | 2 |
1535+------+------+
1536drop table t1;
1537
1538create table t1 (a int, b varchar(10), key b(b(5)));
1539create table t2 (a int, b varchar(10));
1540
1541EXPLAIN BASIC insert into t1 values ( 1, 'abcd1e');
1542Query Plan
1543============================
1544|ID|OPERATOR |NAME|
1545----------------------------
1546|0 |DISTRIBUTED INSERT| |
1547|1 |└─EXPRESSION | |
1548============================
1549Outputs & filters:
1550-------------------------------------
15510 - output(nil), filter(nil)
1552columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b, t1.__substr5_17)})}]),
1553column_values([T_HIDDEN_PK], [column_conv(INT,PS:(11,0),NULL,__values.a)], [column_conv(VARCHAR,utf8mb4_general_ci,length:10,NULL,__values.b)], [column_conv(VARCHAR,
1554utf8mb4_general_ci,length:5,NULL,substr(column_conv(VARCHAR,utf8mb4_general_ci,length:10,NULL,__values.b), 1, 5))])
15551 - output([__values.a], [__values.b]), filter(nil)
1556values({1, 'abcd1e'})
1557insert into t1 values ( 1, 'abcd1e');
1558EXPLAIN BASIC insert into t1 values ( 2, 'abcd2e');
1559Query Plan
1560============================
1561|ID|OPERATOR |NAME|
1562----------------------------
1563|0 |DISTRIBUTED INSERT| |
1564|1 |└─EXPRESSION | |
1565============================
1566Outputs & filters:
1567-------------------------------------
15680 - output(nil), filter(nil)
1569columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b, t1.__substr5_17)})}]),
1570column_values([T_HIDDEN_PK], [column_conv(INT,PS:(11,0),NULL,__values.a)], [column_conv(VARCHAR,utf8mb4_general_ci,length:10,NULL,__values.b)], [column_conv(VARCHAR,
1571utf8mb4_general_ci,length:5,NULL,substr(column_conv(VARCHAR,utf8mb4_general_ci,length:10,NULL,__values.b), 1, 5))])
15721 - output([__values.a], [__values.b]), filter(nil)
1573values({2, 'abcd2e'})
1574insert into t1 values ( 2, 'abcd2e');
1575EXPLAIN BASIC insert into t2 values ( 1, 'abcd1e');
1576Query Plan
1577============================
1578|ID|OPERATOR |NAME|
1579----------------------------
1580|0 |DISTRIBUTED INSERT| |
1581|1 |└─EXPRESSION | |
1582============================
1583Outputs & filters:
1584-------------------------------------
15850 - output(nil), filter(nil)
1586columns([{t2: ({t2: (t2.__pk_increment, t2.a, t2.b)})}]),
1587column_values([T_HIDDEN_PK], [column_conv(INT,PS:(11,0),NULL,__values.a)], [column_conv(VARCHAR,utf8mb4_general_ci,length:10,NULL,__values.b)])
15881 - output([__values.a], [__values.b]), filter(nil)
1589values({1, 'abcd1e'})
1590insert into t2 values ( 1, 'abcd1e');
1591EXPLAIN BASIC insert into t2 values ( 2, 'abcd2e');
1592Query Plan
1593============================
1594|ID|OPERATOR |NAME|
1595----------------------------
1596|0 |DISTRIBUTED INSERT| |
1597|1 |└─EXPRESSION | |
1598============================
1599Outputs & filters:
1600-------------------------------------
16010 - output(nil), filter(nil)
1602columns([{t2: ({t2: (t2.__pk_increment, t2.a, t2.b)})}]),
1603column_values([T_HIDDEN_PK], [column_conv(INT,PS:(11,0),NULL,__values.a)], [column_conv(VARCHAR,utf8mb4_general_ci,length:10,NULL,__values.b)])
16041 - output([__values.a], [__values.b]), filter(nil)
1605values({2, 'abcd2e'})
1606insert into t2 values ( 2, 'abcd2e');
1607EXPLAIN BASIC update t1, t2 set t1.a = t2.a where t2.b = t1.b;
1608Query Plan
1609=============================
1610|ID|OPERATOR |NAME|
1611-----------------------------
1612|0 |UPDATE | |
1613|1 |└─HASH JOIN | |
1614|2 | ├─TABLE FULL SCAN|t1 |
1615|3 | └─TABLE FULL SCAN|t2 |
1616=============================
1617Outputs & filters:
1618-------------------------------------
16190 - output(nil), filter(nil)
1620table_columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b, t1.__substr5_17)}), hash_distinct}]),
1621update([t1.a=column_conv(INT,PS:(11,0),NULL,t2.a)])
16221 - output([t1.__pk_increment], [t1.a], [t1.b], [substr(t1.b, 1, 5)], [t2.a]), filter(nil), rowset=16
1623equal_conds([t2.b = t1.b]), other_conds(nil)
16242 - output([t1.__pk_increment], [t1.b], [substr(t1.b, 1, 5)], [t1.a]), filter(nil), rowset=16
1625access([t1.__pk_increment], [t1.b], [t1.a]), partitions(p0)
1626is_index_back=false, is_global_index=false,
1627range_key([t1.__pk_increment]), range(MIN ; MAX)always true
16283 - output([t2.a], [t2.b]), filter(nil), rowset=16
1629access([t2.a], [t2.b]), partitions(p0)
1630is_index_back=false, is_global_index=false,
1631range_key([t2.__pk_increment]), range(MIN ; MAX)always true
1632update t1, t2 set t1.a = t2.a where t2.b = t1.b;
1633show warnings;
1634Level Code Message
1635EXPLAIN BASIC select * from t1;
1636Query Plan
1637=========================
1638|ID|OPERATOR |NAME|
1639-------------------------
1640|0 |TABLE FULL SCAN|t1 |
1641=========================
1642Outputs & filters:
1643-------------------------------------
16440 - output([t1.a], [t1.b]), filter(nil), rowset=16
1645access([t1.b], [t1.a]), partitions(p0)
1646is_index_back=false, is_global_index=false,
1647range_key([t1.__pk_increment]), range(MIN ; MAX)always true
1648select * from t1;
1649+------+--------+
1650| a | b |
1651+------+--------+
1652| 1 | abcd1e |
1653| 2 | abcd2e |
1654+------+--------+
1655EXPLAIN BASIC select * from t2;
1656Query Plan
1657=========================
1658|ID|OPERATOR |NAME|
1659-------------------------
1660|0 |TABLE FULL SCAN|t2 |
1661=========================
1662Outputs & filters:
1663-------------------------------------
16640 - output([t2.a], [t2.b]), filter(nil), rowset=16
1665access([t2.a], [t2.b]), partitions(p0)
1666is_index_back=false, is_global_index=false,
1667range_key([t2.__pk_increment]), range(MIN ; MAX)always true
1668select * from t2;
1669+------+--------+
1670| a | b |
1671+------+--------+
1672| 1 | abcd1e |
1673| 2 | abcd2e |
1674+------+--------+
1675drop table t1, t2;
1676
1677create table t1(f1 int, f2 int);
1678create table t2(f3 int, f4 int);
1679create index idx on t2(f3);
1680EXPLAIN BASIC insert into t1 values(1,0),(2,0);
1681Query Plan
1682============================
1683|ID|OPERATOR |NAME|
1684----------------------------
1685|0 |DISTRIBUTED INSERT| |
1686|1 |└─EXPRESSION | |
1687============================
1688Outputs & filters:
1689-------------------------------------
16900 - output(nil), filter(nil)
1691columns([{t1: ({t1: (t1.__pk_increment, t1.f1, t1.f2)})}]),
1692column_values([T_HIDDEN_PK], [column_conv(INT,PS:(11,0),NULL,__values.f1)], [column_conv(INT,PS:(11,0),NULL,__values.f2)])
16931 - output([__values.f1], [__values.f2]), filter(nil)
1694values({1, 0}, {2, 0})
1695insert into t1 values(1,0),(2,0);
1696EXPLAIN BASIC insert into t2 values(1,1),(2,2);
1697Query Plan
1698============================
1699|ID|OPERATOR |NAME|
1700----------------------------
1701|0 |DISTRIBUTED INSERT| |
1702|1 |└─EXPRESSION | |
1703============================
1704Outputs & filters:
1705-------------------------------------
17060 - output(nil), filter(nil)
1707columns([{t2: ({t2: (t2.__pk_increment, t2.f3, t2.f4)})}]),
1708column_values([T_HIDDEN_PK], [column_conv(INT,PS:(11,0),NULL,__values.f3)], [column_conv(INT,PS:(11,0),NULL,__values.f4)])
17091 - output([__values.f3], [__values.f4]), filter(nil)
1710values({1, 1}, {2, 2})
1711insert into t2 values(1,1),(2,2);
1712EXPLAIN BASIC UPDATE t1 SET t1.f2=(SELECT MAX(t2.f4) FROM t2 WHERE t2.f3=t1.f1);
1713Query Plan
1714==================================
1715|ID|OPERATOR |NAME |
1716----------------------------------
1717|0 |UPDATE | |
1718|1 |└─HASH OUTER JOIN | |
1719|2 | ├─TABLE FULL SCAN |t1 |
1720|3 | └─SUBPLAN SCAN |VIEW1|
1721|4 | └─HASH GROUP BY | |
1722|5 | └─TABLE FULL SCAN|t2 |
1723==================================
1724Outputs & filters:
1725-------------------------------------
17260 - output(nil), filter(nil)
1727table_columns([{t1: ({t1: (t1.__pk_increment, t1.f1, t1.f2)})}]),
1728update([t1.f2=column_conv(INT,PS:(11,0),NULL,VIEW1.MAX(t2.f4))])
17291 - output([t1.__pk_increment], [t1.f1], [t1.f2], [VIEW1.MAX(t2.f4)]), filter(nil), rowset=16
1730equal_conds([VIEW1.t2.f3 = t1.f1]), other_conds(nil)
17312 - output([t1.__pk_increment], [t1.f2], [t1.f1]), filter(nil), rowset=16
1732access([t1.__pk_increment], [t1.f2], [t1.f1]), partitions(p0)
1733is_index_back=false, is_global_index=false,
1734range_key([t1.__pk_increment]), range(MIN ; MAX)always true
17353 - output([VIEW1.MAX(t2.f4)], [VIEW1.t2.f3]), filter(nil), rowset=16
1736access([VIEW1.MAX(t2.f4)], [VIEW1.t2.f3])
17374 - output([T_FUN_MAX(t2.f4)], [t2.f3]), filter(nil), rowset=16
1738group([t2.f3]), agg_func([T_FUN_MAX(t2.f4)])
17395 - output([t2.f3], [t2.f4]), filter(nil), rowset=16
1740access([t2.f3], [t2.f4]), partitions(p0)
1741is_index_back=false, is_global_index=false,
1742range_key([t2.__pk_increment]), range(MIN ; MAX)always true
1743UPDATE t1 SET t1.f2=(SELECT MAX(t2.f4) FROM t2 WHERE t2.f3=t1.f1);
1744EXPLAIN BASIC select * from t1;
1745Query Plan
1746=========================
1747|ID|OPERATOR |NAME|
1748-------------------------
1749|0 |TABLE FULL SCAN|t1 |
1750=========================
1751Outputs & filters:
1752-------------------------------------
17530 - output([t1.f1], [t1.f2]), filter(nil), rowset=16
1754access([t1.f1], [t1.f2]), partitions(p0)
1755is_index_back=false, is_global_index=false,
1756range_key([t1.__pk_increment]), range(MIN ; MAX)always true
1757select * from t1;
1758+------+------+
1759| f1 | f2 |
1760+------+------+
1761| 1 | 1 |
1762| 2 | 2 |
1763+------+------+
1764drop table t1,t2;
1765
1766create table t1(f1 int);
1767EXPLAIN BASIC select DATABASE();
1768Query Plan
1769====================
1770|ID|OPERATOR |NAME|
1771--------------------
1772|0 |EXPRESSION| |
1773====================
1774Outputs & filters:
1775-------------------------------------
17760 - output([database()]), filter(nil)
1777values({database()})
1778select DATABASE();
1779+------------+
1780| DATABASE() |
1781+------------+
1782| test |
1783+------------+
1784update t1 set f1=1 where count(*)=1;
1785ERROR HY000: Invalid use of group function
1786EXPLAIN BASIC select DATABASE();
1787Query Plan
1788====================
1789|ID|OPERATOR |NAME|
1790--------------------
1791|0 |EXPRESSION| |
1792====================
1793Outputs & filters:
1794-------------------------------------
17950 - output([database()]), filter(nil)
1796values({database()})
1797select DATABASE();
1798+------------+
1799| DATABASE() |
1800+------------+
1801| test |
1802+------------+
1803delete from t1 where count(*)=1;
1804ERROR HY000: Invalid use of group function
1805drop table t1;
1806
1807create table t1 ( a int, b int default 0, index (a) );
1808EXPLAIN BASIC insert into t1 (a) values (0),(0),(0),(0),(0),(0),(0),(0);
1809Query Plan
1810============================
1811|ID|OPERATOR |NAME|
1812----------------------------
1813|0 |DISTRIBUTED INSERT| |
1814|1 |└─EXPRESSION | |
1815============================
1816Outputs & filters:
1817-------------------------------------
18180 - output(nil), filter(nil)
1819columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b)})}]),
1820column_values([T_HIDDEN_PK], [column_conv(INT,PS:(11,0),NULL,__values.a)], [column_conv(INT,PS:(11,0),NULL,0)])
18211 - output([__values.a]), filter(nil)
1822values({0}, {0}, {0}, {0}, {0}, {0}, {0}, {0})
1823insert into t1 (a) values (0),(0),(0),(0),(0),(0),(0),(0);
1824
1825EXPLAIN BASIC select a from t1 order by a limit 1;
1826Query Plan
1827==========================
1828|ID|OPERATOR |NAME |
1829--------------------------
1830|0 |TABLE FULL SCAN|t1(a)|
1831==========================
1832Outputs & filters:
1833-------------------------------------
18340 - output([t1.a]), filter(nil), rowset=16
1835access([t1.a]), partitions(p0)
1836limit(1), offset(nil), is_index_back=false, is_global_index=false,
1837range_key([t1.a], [t1.__pk_increment]), range(MIN,MIN ; MAX,MAX)always true
1838select a from t1 order by a limit 1;
1839+------+
1840| a |
1841+------+
1842| 0 |
1843+------+
1844EXPLAIN BASIC update t1 set a=9999 order by a limit 1;
1845Query Plan
1846============================
1847|ID|OPERATOR |NAME |
1848----------------------------
1849|0 |UPDATE | |
1850|1 |└─TABLE FULL SCAN|t1(a)|
1851============================
1852Outputs & filters:
1853-------------------------------------
18540 - output(nil), filter(nil)
1855table_columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b)})}]),
1856update([t1.a=column_conv(INT,PS:(11,0),NULL,cast(9999, INT(-1, 0)))])
18571 - output([t1.__pk_increment], [t1.a], [t1.b]), filter(nil), rowset=16
1858access([t1.__pk_increment], [t1.a], [t1.b]), partitions(p0)
1859limit(1), offset(nil), is_index_back=true, is_global_index=false,
1860range_key([t1.a], [t1.__pk_increment]), range(MIN,MIN ; MAX,MAX)always true
1861update t1 set a=9999 order by a limit 1;
1862EXPLAIN BASIC update t1 set b=9999 order by a limit 1;
1863Query Plan
1864============================
1865|ID|OPERATOR |NAME |
1866----------------------------
1867|0 |UPDATE | |
1868|1 |└─TABLE FULL SCAN|t1(a)|
1869============================
1870Outputs & filters:
1871-------------------------------------
18720 - output(nil), filter(nil)
1873table_columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b)})}]),
1874update([t1.b=column_conv(INT,PS:(11,0),NULL,cast(9999, INT(-1, 0)))])
18751 - output([t1.__pk_increment], [t1.b], [t1.a]), filter(nil), rowset=16
1876access([t1.__pk_increment], [t1.b], [t1.a]), partitions(p0)
1877limit(1), offset(nil), is_index_back=true, is_global_index=false,
1878range_key([t1.a], [t1.__pk_increment]), range(MIN,MIN ; MAX,MAX)always true
1879update t1 set b=9999 order by a limit 1;
1880EXPLAIN BASIC delete from t1 order by a limit 1;
1881Query Plan
1882============================
1883|ID|OPERATOR |NAME |
1884----------------------------
1885|0 |DELETE | |
1886|1 |└─TABLE FULL SCAN|t1(a)|
1887============================
1888Outputs & filters:
1889-------------------------------------
18900 - output(nil), filter(nil)
1891table_columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b)})}])
18921 - output([t1.__pk_increment], [t1.a], [t1.b]), filter(nil), rowset=16
1893access([t1.__pk_increment], [t1.a], [t1.b]), partitions(p0)
1894limit(1), offset(nil), is_index_back=true, is_global_index=false,
1895range_key([t1.a], [t1.__pk_increment]), range(MIN,MIN ; MAX,MAX)always true
1896delete from t1 order by a limit 1;
1897EXPLAIN BASIC delete from t1 order by a desc limit 1;
1898Query Plan
1899====================================
1900|ID|OPERATOR |NAME |
1901------------------------------------
1902|0 |DELETE | |
1903|1 |└─TABLE FULL SCAN|t1(a,Reverse)|
1904====================================
1905Outputs & filters:
1906-------------------------------------
19070 - output(nil), filter(nil)
1908table_columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b)})}])
19091 - output([t1.__pk_increment], [t1.a], [t1.b]), filter(nil), rowset=16
1910access([t1.__pk_increment], [t1.a], [t1.b]), partitions(p0)
1911limit(1), offset(nil), is_index_back=true, is_global_index=false,
1912range_key([t1.a], [t1.__pk_increment]), range(MIN,MIN ; MAX,MAX)always true
1913delete from t1 order by a desc limit 1;
1914EXPLAIN BASIC delete from t1 order by a limit 1;
1915Query Plan
1916============================
1917|ID|OPERATOR |NAME |
1918----------------------------
1919|0 |DELETE | |
1920|1 |└─TABLE FULL SCAN|t1(a)|
1921============================
1922Outputs & filters:
1923-------------------------------------
19240 - output(nil), filter(nil)
1925table_columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b)})}])
19261 - output([t1.__pk_increment], [t1.a], [t1.b]), filter(nil), rowset=16
1927access([t1.__pk_increment], [t1.a], [t1.b]), partitions(p0)
1928limit(1), offset(nil), is_index_back=true, is_global_index=false,
1929range_key([t1.a], [t1.__pk_increment]), range(MIN,MIN ; MAX,MAX)always true
1930delete from t1 order by a limit 1;
1931EXPLAIN BASIC select * from t1;
1932Query Plan
1933=========================
1934|ID|OPERATOR |NAME|
1935-------------------------
1936|0 |TABLE FULL SCAN|t1 |
1937=========================
1938Outputs & filters:
1939-------------------------------------
19400 - output([t1.a], [t1.b]), filter(nil), rowset=16
1941access([t1.a], [t1.b]), partitions(p0)
1942is_index_back=false, is_global_index=false,
1943range_key([t1.__pk_increment]), range(MIN ; MAX)always true
1944select * from t1;
1945+------+------+
1946| a | b |
1947+------+------+
1948| 0 | 0 |
1949| 0 | 0 |
1950| 0 | 0 |
1951| 0 | 0 |
1952| 0 | 0 |
1953+------+------+
1954EXPLAIN BASIC update t1 set a=a+10,b=1 order by a limit 3;
1955Query Plan
1956============================
1957|ID|OPERATOR |NAME |
1958----------------------------
1959|0 |UPDATE | |
1960|1 |└─TABLE FULL SCAN|t1(a)|
1961============================
1962Outputs & filters:
1963-------------------------------------
19640 - output(nil), filter(nil)
1965table_columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b)})}]),
1966update([t1.a=column_conv(INT,PS:(11,0),NULL,cast(t1.a + 10, INT(-1, 0)))], [t1.b=column_conv(INT,PS:(11,0),NULL,cast(1, INT(-1, 0)))])
19671 - output([t1.__pk_increment], [t1.a], [t1.b]), filter(nil), rowset=16
1968access([t1.__pk_increment], [t1.a], [t1.b]), partitions(p0)
1969limit(3), offset(nil), is_index_back=true, is_global_index=false,
1970range_key([t1.a], [t1.__pk_increment]), range(MIN,MIN ; MAX,MAX)always true
1971update t1 set a=a+10,b=1 order by a limit 3;
1972EXPLAIN BASIC update t1 set a=a+11,b=2 order by a limit 3;
1973Query Plan
1974============================
1975|ID|OPERATOR |NAME |
1976----------------------------
1977|0 |UPDATE | |
1978|1 |└─TABLE FULL SCAN|t1(a)|
1979============================
1980Outputs & filters:
1981-------------------------------------
19820 - output(nil), filter(nil)
1983table_columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b)})}]),
1984update([t1.a=column_conv(INT,PS:(11,0),NULL,cast(t1.a + 11, INT(-1, 0)))], [t1.b=column_conv(INT,PS:(11,0),NULL,cast(2, INT(-1, 0)))])
19851 - output([t1.__pk_increment], [t1.a], [t1.b]), filter(nil), rowset=16
1986access([t1.__pk_increment], [t1.a], [t1.b]), partitions(p0)
1987limit(3), offset(nil), is_index_back=true, is_global_index=false,
1988range_key([t1.a], [t1.__pk_increment]), range(MIN,MIN ; MAX,MAX)always true
1989update t1 set a=a+11,b=2 order by a limit 3;
1990EXPLAIN BASIC update t1 set a=a+12,b=3 order by a limit 3;
1991Query Plan
1992============================
1993|ID|OPERATOR |NAME |
1994----------------------------
1995|0 |UPDATE | |
1996|1 |└─TABLE FULL SCAN|t1(a)|
1997============================
1998Outputs & filters:
1999-------------------------------------
20000 - output(nil), filter(nil)
2001table_columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.b)})}]),
2002update([t1.a=column_conv(INT,PS:(11,0),NULL,cast(t1.a + 12, INT(-1, 0)))], [t1.b=column_conv(INT,PS:(11,0),NULL,cast(3, INT(-1, 0)))])
20031 - output([t1.__pk_increment], [t1.a], [t1.b]), filter(nil), rowset=16
2004access([t1.__pk_increment], [t1.a], [t1.b]), partitions(p0)
2005limit(3), offset(nil), is_index_back=true, is_global_index=false,
2006range_key([t1.a], [t1.__pk_increment]), range(MIN,MIN ; MAX,MAX)always true
2007update t1 set a=a+12,b=3 order by a limit 3;
2008EXPLAIN BASIC select * from t1 order by a;
2009Query Plan
2010===========================
2011|ID|OPERATOR |NAME|
2012---------------------------
2013|0 |SORT | |
2014|1 |└─TABLE FULL SCAN|t1 |
2015===========================
2016Outputs & filters:
2017-------------------------------------
20180 - output([t1.a], [t1.b]), filter(nil), rowset=16
2019sort_keys([t1.a, ASC])
20201 - output([t1.a], [t1.b]), filter(nil), rowset=16
2021access([t1.a], [t1.b]), partitions(p0)
2022is_index_back=false, is_global_index=false,
2023range_key([t1.__pk_increment]), range(MIN ; MAX)always true
2024select * from t1 order by a;
2025+------+------+
2026| a | b |
2027+------+------+
2028| 11 | 2 |
2029| 21 | 2 |
2030| 22 | 3 |
2031| 22 | 3 |
2032| 23 | 3 |
2033+------+------+
2034
2035drop table t1;
2036
2037create table t1 (f1 date not null);
2038EXPLAIN BASIC insert into t1 values('2000-01-01'),('0000-00-00');
2039Query Plan
2040============================
2041|ID|OPERATOR |NAME|
2042----------------------------
2043|0 |DISTRIBUTED INSERT| |
2044|1 |└─EXPRESSION | |
2045============================
2046Outputs & filters:
2047-------------------------------------
20480 - output(nil), filter(nil)
2049columns([{t1: ({t1: (t1.__pk_increment, t1.f1)})}]),
2050column_values([T_HIDDEN_PK], [column_conv(DATE,PS:(10,0),NOT NULL,__values.f1)])
20511 - output([__values.f1]), filter(nil)
2052values({'2000-01-01'}, {'0000-00-00'})
2053insert into t1 values('2000-01-01'),('0000-00-00');
2054EXPLAIN BASIC update t1 set f1='2002-02-02' where f1 is null;
2055Query Plan
2056===========================
2057|ID|OPERATOR |NAME|
2058---------------------------
2059|0 |UPDATE | |
2060|1 |└─TABLE FULL SCAN|t1 |
2061===========================
2062Outputs & filters:
2063-------------------------------------
20640 - output(nil), filter(nil)
2065table_columns([{t1: ({t1: (t1.__pk_increment, t1.f1)})}]),
2066update([t1.f1=column_conv(DATE,PS:(10,0),NOT NULL,cast('2002-02-02', DATE(-1, -1)))])
20671 - output([t1.__pk_increment], [t1.f1]), filter([t1.f1 = '0000-00-00']), rowset=16
2068access([t1.__pk_increment], [t1.f1]), partitions(p0)
2069is_index_back=false, is_global_index=false, filter_before_indexback[false],
2070range_key([t1.__pk_increment]), range(MIN ; MAX)always true
2071update t1 set f1='2002-02-02' where f1 is null;
2072EXPLAIN BASIC select * from t1;
2073Query Plan
2074=========================
2075|ID|OPERATOR |NAME|
2076-------------------------
2077|0 |TABLE FULL SCAN|t1 |
2078=========================
2079Outputs & filters:
2080-------------------------------------
20810 - output([t1.f1]), filter(nil), rowset=16
2082access([t1.f1]), partitions(p0)
2083is_index_back=false, is_global_index=false,
2084range_key([t1.__pk_increment]), range(MIN ; MAX)always true
2085select * from t1;
2086+------------+
2087| f1 |
2088+------------+
2089| 2000-01-01 |
2090| 2002-02-02 |
2091+------------+
2092drop table t1;
2093
2094create table t1 (f1 int);
2095create table t2 (f2 int);
2096EXPLAIN BASIC insert into t1 values(1),(2);
2097Query Plan
2098============================
2099|ID|OPERATOR |NAME|
2100----------------------------
2101|0 |DISTRIBUTED INSERT| |
2102|1 |└─EXPRESSION | |
2103============================
2104Outputs & filters:
2105-------------------------------------
21060 - output(nil), filter(nil)
2107columns([{t1: ({t1: (t1.__pk_increment, t1.f1)})}]),
2108column_values([T_HIDDEN_PK], [column_conv(INT,PS:(11,0),NULL,__values.f1)])
21091 - output([__values.f1]), filter(nil)
2110values({1}, {2})
2111insert into t1 values(1),(2);
2112EXPLAIN BASIC insert into t2 values(1),(1);
2113Query Plan
2114============================
2115|ID|OPERATOR |NAME|
2116----------------------------
2117|0 |DISTRIBUTED INSERT| |
2118|1 |└─EXPRESSION | |
2119============================
2120Outputs & filters:
2121-------------------------------------
21220 - output(nil), filter(nil)
2123columns([{t2: ({t2: (t2.__pk_increment, t2.f2)})}]),
2124column_values([T_HIDDEN_PK], [column_conv(INT,PS:(11,0),NULL,__values.f2)])
21251 - output([__values.f2]), filter(nil)
2126values({1}, {1})
2127insert into t2 values(1),(1);
2128EXPLAIN BASIC update t2 set f2=1;
2129Query Plan
2130===========================
2131|ID|OPERATOR |NAME|
2132---------------------------
2133|0 |UPDATE | |
2134|1 |└─TABLE FULL SCAN|t2 |
2135===========================
2136Outputs & filters:
2137-------------------------------------
21380 - output(nil), filter(nil)
2139table_columns([{t2: ({t2: (t2.__pk_increment, t2.f2)})}]),
2140update([t2.f2=column_conv(INT,PS:(11,0),NULL,cast(1, INT(-1, 0)))])
21411 - output([t2.__pk_increment], [t2.f2]), filter(nil), rowset=16
2142access([t2.__pk_increment], [t2.f2]), partitions(p0)
2143is_index_back=false, is_global_index=false,
2144range_key([t2.__pk_increment]), range(MIN ; MAX)always true
2145update t2 set f2=1;
2146EXPLAIN BASIC update t1 set f1=1 where f1=3;
2147Query Plan
2148===========================
2149|ID|OPERATOR |NAME|
2150---------------------------
2151|0 |UPDATE | |
2152|1 |└─TABLE FULL SCAN|t1 |
2153===========================
2154Outputs & filters:
2155-------------------------------------
21560 - output(nil), filter(nil)
2157table_columns([{t1: ({t1: (t1.__pk_increment, t1.f1)})}]),
2158update([t1.f1=column_conv(INT,PS:(11,0),NULL,cast(1, INT(-1, 0)))])
21591 - output([t1.__pk_increment], [t1.f1]), filter([t1.f1 = 3]), rowset=16
2160access([t1.__pk_increment], [t1.f1]), partitions(p0)
2161is_index_back=false, is_global_index=false, filter_before_indexback[false],
2162range_key([t1.__pk_increment]), range(MIN ; MAX)always true
2163update t1 set f1=1 where f1=3;
2164drop table t1,t2;
2165
2166create table t1(f1 int, `*f2` int);
2167EXPLAIN BASIC insert into t1 values (1,1);
2168Query Plan
2169============================
2170|ID|OPERATOR |NAME|
2171----------------------------
2172|0 |DISTRIBUTED INSERT| |
2173|1 |└─EXPRESSION | |
2174============================
2175Outputs & filters:
2176-------------------------------------
21770 - output(nil), filter(nil)
2178columns([{t1: ({t1: (t1.__pk_increment, t1.f1, t1.*f2)})}]),
2179column_values([T_HIDDEN_PK], [column_conv(INT,PS:(11,0),NULL,__values.f1)], [column_conv(INT,PS:(11,0),NULL,__values.*f2)])
21801 - output([__values.f1], [__values.*f2]), filter(nil)
2181values({1, 1})
2182insert into t1 values (1,1);
2183EXPLAIN BASIC update t1 set `*f2`=1;
2184Query Plan
2185===========================
2186|ID|OPERATOR |NAME|
2187---------------------------
2188|0 |UPDATE | |
2189|1 |└─TABLE FULL SCAN|t1 |
2190===========================
2191Outputs & filters:
2192-------------------------------------
21930 - output(nil), filter(nil)
2194table_columns([{t1: ({t1: (t1.__pk_increment, t1.f1, t1.*f2)})}]),
2195update([t1.*f2=column_conv(INT,PS:(11,0),NULL,cast(1, INT(-1, 0)))])
21961 - output([t1.__pk_increment], [t1.*f2], [t1.f1]), filter(nil), rowset=16
2197access([t1.__pk_increment], [t1.*f2], [t1.f1]), partitions(p0)
2198is_index_back=false, is_global_index=false,
2199range_key([t1.__pk_increment]), range(MIN ; MAX)always true
2200update t1 set `*f2`=1;
2201drop table t1;
2202
2203create table t1(f1 int);
2204update t1 set f2=1 order by f2;
2205ERROR 42S22: Unknown column 'f2' in 'field list'
2206drop table t1;
2207CREATE TABLE t1 (
2208request_id int unsigned NOT NULL auto_increment,
2209user_id varchar(12) default NULL,
2210time_stamp datetime NOT NULL default '0000-00-00 00:00:00',
2211ip_address varchar(15) default NULL,
2212PRIMARY KEY (request_id),
2213KEY user_id_2 (user_id,time_stamp)
2214);
2215
2216EXPLAIN BASIC INSERT INTO t1 (user_id) VALUES ('user1');
2217Query Plan
2218============================
2219|ID|OPERATOR |NAME|
2220----------------------------
2221|0 |DISTRIBUTED INSERT| |
2222|1 |└─EXPRESSION | |
2223============================
2224Outputs & filters:
2225-------------------------------------
22260 - output(nil), filter(nil)
2227columns([{t1: ({t1: (t1.request_id, t1.user_id, t1.time_stamp, t1.ip_address)})}]),
2228column_values([column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,cast(t1.request_id.nextval(), INT UNSIGNED(-1, 0)))], [column_conv(VARCHAR,utf8mb4_general_ci,
2229length:12,NULL,__values.user_id)], [column_conv(DATETIME,PS:(19,0),NOT NULL,'0000-00-00 00:00:00')], [column_conv(VARCHAR,utf8mb4_general_ci,length:15,NULL,
2230cast(NULL, VARCHAR(1048576)))])
22311 - output([__values.user_id]), filter(nil)
2232values({'user1'})
2233INSERT INTO t1 (user_id) VALUES ('user1');
2234EXPLAIN BASIC INSERT INTO t1 (user_id) VALUES ('user1');
2235Query Plan
2236============================
2237|ID|OPERATOR |NAME|
2238----------------------------
2239|0 |DISTRIBUTED INSERT| |
2240|1 |└─EXPRESSION | |
2241============================
2242Outputs & filters:
2243-------------------------------------
22440 - output(nil), filter(nil)
2245columns([{t1: ({t1: (t1.request_id, t1.user_id, t1.time_stamp, t1.ip_address)})}]),
2246column_values([column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,cast(t1.request_id.nextval(), INT UNSIGNED(-1, 0)))], [column_conv(VARCHAR,utf8mb4_general_ci,
2247length:12,NULL,__values.user_id)], [column_conv(DATETIME,PS:(19,0),NOT NULL,'0000-00-00 00:00:00')], [column_conv(VARCHAR,utf8mb4_general_ci,length:15,NULL,
2248cast(NULL, VARCHAR(1048576)))])
22491 - output([__values.user_id]), filter(nil)
2250values({'user1'})
2251INSERT INTO t1 (user_id) VALUES ('user1');
2252EXPLAIN BASIC INSERT INTO t1 (user_id) VALUES ('user1');
2253Query Plan
2254============================
2255|ID|OPERATOR |NAME|
2256----------------------------
2257|0 |DISTRIBUTED INSERT| |
2258|1 |└─EXPRESSION | |
2259============================
2260Outputs & filters:
2261-------------------------------------
22620 - output(nil), filter(nil)
2263columns([{t1: ({t1: (t1.request_id, t1.user_id, t1.time_stamp, t1.ip_address)})}]),
2264column_values([column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,cast(t1.request_id.nextval(), INT UNSIGNED(-1, 0)))], [column_conv(VARCHAR,utf8mb4_general_ci,
2265length:12,NULL,__values.user_id)], [column_conv(DATETIME,PS:(19,0),NOT NULL,'0000-00-00 00:00:00')], [column_conv(VARCHAR,utf8mb4_general_ci,length:15,NULL,
2266cast(NULL, VARCHAR(1048576)))])
22671 - output([__values.user_id]), filter(nil)
2268values({'user1'})
2269INSERT INTO t1 (user_id) VALUES ('user1');
2270EXPLAIN BASIC INSERT INTO t1 (user_id) VALUES ('user1');
2271Query Plan
2272============================
2273|ID|OPERATOR |NAME|
2274----------------------------
2275|0 |DISTRIBUTED INSERT| |
2276|1 |└─EXPRESSION | |
2277============================
2278Outputs & filters:
2279-------------------------------------
22800 - output(nil), filter(nil)
2281columns([{t1: ({t1: (t1.request_id, t1.user_id, t1.time_stamp, t1.ip_address)})}]),
2282column_values([column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,cast(t1.request_id.nextval(), INT UNSIGNED(-1, 0)))], [column_conv(VARCHAR,utf8mb4_general_ci,
2283length:12,NULL,__values.user_id)], [column_conv(DATETIME,PS:(19,0),NOT NULL,'0000-00-00 00:00:00')], [column_conv(VARCHAR,utf8mb4_general_ci,length:15,NULL,
2284cast(NULL, VARCHAR(1048576)))])
22851 - output([__values.user_id]), filter(nil)
2286values({'user1'})
2287INSERT INTO t1 (user_id) VALUES ('user1');
2288EXPLAIN BASIC INSERT INTO t1 (user_id) VALUES ('user1');
2289Query Plan
2290============================
2291|ID|OPERATOR |NAME|
2292----------------------------
2293|0 |DISTRIBUTED INSERT| |
2294|1 |└─EXPRESSION | |
2295============================
2296Outputs & filters:
2297-------------------------------------
22980 - output(nil), filter(nil)
2299columns([{t1: ({t1: (t1.request_id, t1.user_id, t1.time_stamp, t1.ip_address)})}]),
2300column_values([column_conv(INT UNSIGNED,PS:(10,0),NOT NULL,cast(t1.request_id.nextval(), INT UNSIGNED(-1, 0)))], [column_conv(VARCHAR,utf8mb4_general_ci,
2301length:12,NULL,__values.user_id)], [column_conv(DATETIME,PS:(19,0),NOT NULL,'0000-00-00 00:00:00')], [column_conv(VARCHAR,utf8mb4_general_ci,length:15,NULL,
2302cast(NULL, VARCHAR(1048576)))])
23031 - output([__values.user_id]), filter(nil)
2304values({'user1'})
2305INSERT INTO t1 (user_id) VALUES ('user1');
2306EXPLAIN BASIC SELECT user_id FROM t1 WHERE request_id=9999999999999;
2307Query Plan
2308==========================
2309|ID|OPERATOR |NAME|
2310--------------------------
2311|0 |TABLE RANGE SCAN|t1 |
2312==========================
2313Outputs & filters:
2314-------------------------------------
23150 - output([t1.user_id]), filter(nil), rowset=16
2316access([t1.user_id]), partitions(p0)
2317is_index_back=false, is_global_index=false,
2318range_key([t1.request_id]), range(MAX ; MIN)always false,
2319range_cond([t1.request_id = 9999999999999])
2320SELECT user_id FROM t1 WHERE request_id=9999999999999;
2321+---------+
2322| user_id |
2323+---------+
2324+---------+
2325EXPLAIN BASIC SELECT user_id FROM t1 WHERE request_id=999999999999999999999999999999;
2326Query Plan
2327==========================
2328|ID|OPERATOR |NAME|
2329--------------------------
2330|0 |TABLE RANGE SCAN|t1 |
2331==========================
2332Outputs & filters:
2333-------------------------------------
23340 - output([t1.user_id]), filter(nil), rowset=16
2335access([t1.user_id]), partitions(p0)
2336is_index_back=false, is_global_index=false,
2337range_key([t1.request_id]), range(MAX ; MIN)always false,
2338range_cond([cast(t1.request_id, DECIMAL_INT(30, 0)) = 999999999999999999999999999999])
2339SELECT user_id FROM t1 WHERE request_id=999999999999999999999999999999;
2340+---------+
2341| user_id |
2342+---------+
2343+---------+
2344EXPLAIN BASIC UPDATE t1 SET user_id=null WHERE request_id=9999999999999;
2345Query Plan
2346============================
2347|ID|OPERATOR |NAME|
2348----------------------------
2349|0 |UPDATE | |
2350|1 |└─TABLE RANGE SCAN|t1 |
2351============================
2352Outputs & filters:
2353-------------------------------------
23540 - output(nil), filter(nil)
2355table_columns([{t1: ({t1: (t1.request_id, t1.user_id, t1.time_stamp, t1.ip_address)})}]),
2356update([t1.user_id=column_conv(VARCHAR,utf8mb4_general_ci,length:12,NULL,cast(NULL, VARCHAR(1048576)))])
23571 - output([t1.request_id], [t1.user_id], [t1.time_stamp], [t1.ip_address]), filter(nil), rowset=16
2358access([t1.request_id], [t1.user_id], [t1.time_stamp], [t1.ip_address]), partitions(p0)
2359is_index_back=false, is_global_index=false,
2360range_key([t1.request_id]), range(MAX ; MIN)always false,
2361range_cond([t1.request_id = 9999999999999])
2362UPDATE t1 SET user_id=null WHERE request_id=9999999999999;
2363EXPLAIN BASIC UPDATE t1 SET user_id=null WHERE request_id=999999999999999999999999999999;
2364Query Plan
2365============================
2366|ID|OPERATOR |NAME|
2367----------------------------
2368|0 |UPDATE | |
2369|1 |└─TABLE RANGE SCAN|t1 |
2370============================
2371Outputs & filters:
2372-------------------------------------
23730 - output(nil), filter(nil)
2374table_columns([{t1: ({t1: (t1.request_id, t1.user_id, t1.time_stamp, t1.ip_address)})}]),
2375update([t1.user_id=column_conv(VARCHAR,utf8mb4_general_ci,length:12,NULL,cast(NULL, VARCHAR(1048576)))])
23761 - output([t1.request_id], [t1.user_id], [t1.time_stamp], [t1.ip_address]), filter(nil), rowset=16
2377access([t1.request_id], [t1.user_id], [t1.time_stamp], [t1.ip_address]), partitions(p0)
2378is_index_back=false, is_global_index=false,
2379range_key([t1.request_id]), range(MAX ; MIN)always false,
2380range_cond([cast(t1.request_id, DECIMAL_INT(30, 0)) = 999999999999999999999999999999])
2381UPDATE t1 SET user_id=null WHERE request_id=999999999999999999999999999999;
2382DROP TABLE t1;
2383
2384CREATE TABLE t1 (
2385
2386a INT(11),
2387quux decimal( 31, 30 ),
2388
2389UNIQUE KEY bar (a),
2390KEY quux (quux)
2391);
2392
2393EXPLAIN BASIC INSERT INTO
2394t1 ( a, quux )
2395VALUES
2396( 1, 1 ),
2397( 2, 0.1 );
2398Query Plan
2399============================
2400|ID|OPERATOR |NAME|
2401----------------------------
2402|0 |DISTRIBUTED INSERT| |
2403|1 |└─EXPRESSION | |
2404============================
2405Outputs & filters:
2406-------------------------------------
24070 - output(nil), filter(nil)
2408columns([{t1: ({t1: (t1.__pk_increment, t1.a, t1.quux)})}]),
2409column_values([T_HIDDEN_PK], [column_conv(INT,PS:(11,0),NULL,__values.a)], [column_conv(DECIMAL_INT,PS:(31,30),NULL,__values.quux)])
24101 - output([__values.a], [__values.quux]), filter(nil)
2411values({1, 1}, {2, 0.1})
2412INSERT INTO
2413t1 ( a, quux )
2414VALUES
2415( 1, 1 ),
2416( 2, 0.1 );
2417
2418EXPLAIN BASIC SELECT * FROM t1;
2419Query Plan
2420=========================
2421|ID|OPERATOR |NAME|
2422-------------------------
2423|0 |TABLE FULL SCAN|t1 |
2424=========================
2425Outputs & filters:
2426-------------------------------------
24270 - output([t1.a], [t1.quux]), filter(nil), rowset=16
2428access([t1.a], [t1.quux]), partitions(p0)
2429is_index_back=false, is_global_index=false,
2430range_key([t1.__pk_increment]), range(MIN ; MAX)always true
2431SELECT * FROM t1;
2432+------+----------------------------------+
2433| a | quux |
2434+------+----------------------------------+
2435| 1 | 1.000000000000000000000000000000 |
2436| 2 | 0.100000000000000000000000000000 |
2437+------+----------------------------------+
2438
2439DROP TABLE t1;
2440
2441## Create the test tables
2442##insert into t2(a) select a from t2;
2443##insert into t2(a) select a from t2;
2444##insert into t2(a) select a from t2;
2445## Check that the number of matched rows is correct when the temporary
2446## table is small enough to not be converted to MyISAM
2447##--enable_info
2448##update t1 join t2 on (t1.a=t2.a) set t1.id=t2.id;
2449##--disable_info
2450## Increase table sizes
2451##insert into t2(a) select a from t2;
2452##insert into t1 select * from t2;
2453## Check that the number of matched rows is correct when the temporary
2454## table has to be converted to MyISAM
2455## Check that the number of matched rows is correct when there are duplicate
2456## key errors
2457CREATE TABLE t1 (f1 INTEGER AUTO_INCREMENT, PRIMARY KEY (f1));
2458CREATE TABLE t2(f1 INTEGER AUTO_INCREMENT, PRIMARY KEY (f1));
2459EXPLAIN BASIC INSERT INTO t1 VALUES (1);
2460Query Plan
2461============================
2462|ID|OPERATOR |NAME|
2463----------------------------
2464|0 |DISTRIBUTED INSERT| |
2465|1 |└─EXPRESSION | |
2466============================
2467Outputs & filters:
2468-------------------------------------
24690 - output(nil), filter(nil)
2470columns([{t1: ({t1: (t1.f1)})}]),
2471column_values([column_conv(INT,PS:(11,0),NOT NULL,t1.f1.nextval(column_conv(INT,PS:(11,0),NOT NULL,__values.f1)))])
24721 - output([__values.f1]), filter(nil)
2473values({1})
2474INSERT INTO t1 VALUES (1);
2475EXPLAIN BASIC INSERT INTO t2 VALUES (1);
2476Query Plan
2477============================
2478|ID|OPERATOR |NAME|
2479----------------------------
2480|0 |DISTRIBUTED INSERT| |
2481|1 |└─EXPRESSION | |
2482============================
2483Outputs & filters:
2484-------------------------------------
24850 - output(nil), filter(nil)
2486columns([{t2: ({t2: (t2.f1)})}]),
2487column_values([column_conv(INT,PS:(11,0),NOT NULL,t2.f1.nextval(column_conv(INT,PS:(11,0),NOT NULL,__values.f1)))])
24881 - output([__values.f1]), filter(nil)
2489values({1})
2490INSERT INTO t2 VALUES (1);
2491
2492ALTER TABLE t2 COMMENT = 'ABC';
2493ALTER TABLE t2 COMMENT = 'DEF';
2494
2495DROP TABLE t1, t2;
2496
2497#
2498# Bug#50545: Single table UPDATE IGNORE crashes on join view in
2499# sql_safe_updates mode.
2500#
2501CREATE TABLE t1 ( a INT, KEY( a ) );
2502EXPLAIN BASIC INSERT INTO t1 VALUES (0), (1);
2503Query Plan
2504============================
2505|ID|OPERATOR |NAME|
2506----------------------------
2507|0 |DISTRIBUTED INSERT| |
2508|1 |└─EXPRESSION | |
2509============================
2510Outputs & filters:
2511-------------------------------------
25120 - output(nil), filter(nil)
2513columns([{t1: ({t1: (t1.__pk_increment, t1.a)})}]),
2514column_values([T_HIDDEN_PK], [column_conv(INT,PS:(11,0),NULL,__values.a)])
25151 - output([__values.a]), filter(nil)
2516values({0}, {1})
2517INSERT INTO t1 VALUES (0), (1);
2518CREATE VIEW v1 AS SELECT t11.a, t12.a AS b FROM t1 t11, t1 t12;
2519DROP TABLE t1;
2520DROP VIEW v1;
2521
2522#
2523# Bug#54734 assert in Diagnostics_area::set_ok_status
2524#
2525#
2526# Verify that UPDATE does the same number of handler_update
2527# operations, no matter if there is ORDER BY or not.
2528#
2529CREATE TABLE t1 (i INT);
2530EXPLAIN BASIC INSERT INTO t1 VALUES (10),(11),(12),(13),(14),(15),(16),(17),(18),(19),
2531(20),(21),(22),(23),(24),(25),(26),(27),(28),(29),
2532(30),(31),(32),(33),(34),(35);
2533Query Plan
2534============================
2535|ID|OPERATOR |NAME|
2536----------------------------
2537|0 |DISTRIBUTED INSERT| |
2538|1 |└─EXPRESSION | |
2539============================
2540Outputs & filters:
2541-------------------------------------
25420 - output(nil), filter(nil)
2543columns([{t1: ({t1: (t1.__pk_increment, t1.i)})}]),
2544column_values([T_HIDDEN_PK], [column_conv(INT,PS:(11,0),NULL,__values.i)])
25451 - output([__values.i]), filter(nil)
2546values({10}, {11}, {12}, {13}, {14}, {15}, {16}, {17}, {18}, {19}, {20}, {21}, {22}, {23}, {24}, {25}, {26}, {27}, {28}, {29}, {30}, {31}, {32}, {33},
2547{34}, {35})
2548INSERT INTO t1 VALUES (10),(11),(12),(13),(14),(15),(16),(17),(18),(19),
2549(20),(21),(22),(23),(24),(25),(26),(27),(28),(29),
2550(30),(31),(32),(33),(34),(35);
2551CREATE TABLE t2 (a CHAR(2), b CHAR(2), c CHAR(2), d CHAR(2),
2552INDEX idx (a,b,c));
2553
2554EXPLAIN BASIC INSERT INTO t2 VALUES (10,10,10,10),(11,11,11,11),(12,12,12,12),(13,13,13,13),(14,14,14,14),(15,15,15,15),(16,16,16,16),(17,17,17,17),(18,18,18,18),(19,19,19,19);
2555Query Plan
2556============================
2557|ID|OPERATOR |NAME|
2558----------------------------
2559|0 |DISTRIBUTED INSERT| |
2560|1 |└─EXPRESSION | |
2561============================
2562Outputs & filters:
2563-------------------------------------
25640 - output(nil), filter(nil)
2565columns([{t2: ({t2: (t2.__pk_increment, t2.a, t2.b, t2.c, t2.d)})}]),
2566column_values([T_HIDDEN_PK], [column_conv(CHAR,utf8mb4_general_ci,length:2,NULL,__values.a)], [column_conv(CHAR,utf8mb4_general_ci,length:2,NULL,__values.b)],
2567[column_conv(CHAR,utf8mb4_general_ci,length:2,NULL,__values.c)], [column_conv(CHAR,utf8mb4_general_ci,length:2,NULL,__values.d)])
25681 - output([__values.a], [__values.b], [__values.c], [__values.d]), filter(nil)
2569values({10, 10, 10, 10}, {11, 11, 11, 11}, {12, 12, 12, 12}, {13, 13, 13, 13}, {14, 14, 14, 14}, {15, 15, 15, 15}, {16, 16, 16, 16}, {17, 17, 17,
257017}, {18, 18, 18, 18}, {19, 19, 19, 19})
2571INSERT INTO t2 VALUES (10,10,10,10),(11,11,11,11),(12,12,12,12),(13,13,13,13),(14,14,14,14),(15,15,15,15),(16,16,16,16),(17,17,17,17),(18,18,18,18),(19,19,19,19);
2572
2573START TRANSACTION;
2574EXPLAIN BASIC UPDATE t2 SET d = 10 WHERE b = 10 LIMIT 5;
2575Query Plan
2576===========================
2577|ID|OPERATOR |NAME|
2578---------------------------
2579|0 |UPDATE | |
2580|1 |└─TABLE FULL SCAN|t2 |
2581===========================
2582Outputs & filters:
2583-------------------------------------
25840 - output(nil), filter(nil)
2585table_columns([{t2: ({t2: (t2.__pk_increment, t2.a, t2.b, t2.c, t2.d)})}]),
2586update([t2.d=column_conv(CHAR,utf8mb4_general_ci,length:2,NULL,cast(inner_trim(2, cast(' ', VARCHAR(1048576)), cast(10, VARCHAR(1048576))), CHAR(1048576)))])
25871 - output([t2.__pk_increment], [t2.d], [t2.a], [t2.b], [t2.c]), filter([cast(t2.b, DECIMAL(-1, -1)) = cast(10, DECIMAL(2, 0))]), rowset=16
2588access([t2.__pk_increment], [t2.d], [t2.a], [t2.b], [t2.c]), partitions(p0)
2589limit(5), offset(nil), is_index_back=false, is_global_index=false, filter_before_indexback[false],
2590range_key([t2.__pk_increment]), range(MIN ; MAX)always true
2591UPDATE t2 SET d = 10 WHERE b = 10 LIMIT 5;
2592ROLLBACK;
2593START TRANSACTION;
2594EXPLAIN BASIC UPDATE t2 SET d = 10 WHERE b = 10 ORDER BY a, c LIMIT 5;
2595Query Plan
2596=============================
2597|ID|OPERATOR |NAME|
2598-----------------------------
2599|0 |UPDATE | |
2600|1 |└─TOP-N SORT | |
2601|2 | └─TABLE FULL SCAN|t2 |
2602=============================
2603Outputs & filters:
2604-------------------------------------
26050 - output(nil), filter(nil)
2606table_columns([{t2: ({t2: (t2.__pk_increment, t2.a, t2.b, t2.c, t2.d)})}]),
2607update([t2.d=column_conv(CHAR,utf8mb4_general_ci,length:2,NULL,cast(inner_trim(2, cast(' ', VARCHAR(1048576)), cast(10, VARCHAR(1048576))), CHAR(1048576)))])
26081 - output([t2.__pk_increment], [t2.a], [t2.b], [t2.c], [t2.d]), filter(nil), rowset=16
2609sort_keys([t2.a, ASC], [t2.c, ASC]), topn(5)
26102 - output([t2.__pk_increment], [t2.d], [t2.a], [t2.b], [t2.c]), filter([cast(t2.b, DECIMAL(-1, -1)) = cast(10, DECIMAL(2, 0))]), rowset=16
2611access([t2.__pk_increment], [t2.d], [t2.a], [t2.b], [t2.c]), partitions(p0)
2612is_index_back=false, is_global_index=false, filter_before_indexback[false],
2613range_key([t2.__pk_increment]), range(MIN ; MAX)always true
2614UPDATE t2 SET d = 10 WHERE b = 10 ORDER BY a, c LIMIT 5;
2615ROLLBACK;
2616
2617Same test with a different UPDATE.
2618ALTER TABLE t2 DROP INDEX idx;
2619alter table t2 ADD INDEX idx2 (a, b);
2620START TRANSACTION;
2621EXPLAIN BASIC UPDATE t2 SET c = 10 LIMIT 5;
2622Query Plan
2623===========================
2624|ID|OPERATOR |NAME|
2625---------------------------
2626|0 |UPDATE | |
2627|1 |└─TABLE FULL SCAN|t2 |
2628===========================
2629Outputs & filters:
2630-------------------------------------
26310 - output(nil), filter(nil)
2632table_columns([{t2: ({t2: (t2.__pk_increment, t2.a, t2.b, t2.c, t2.d)})}]),
2633update([t2.c=column_conv(CHAR,utf8mb4_general_ci,length:2,NULL,cast(inner_trim(2, cast(' ', VARCHAR(1048576)), cast(10, VARCHAR(1048576))), CHAR(1048576)))])
26341 - output([t2.__pk_increment], [t2.c], [t2.a], [t2.b], [t2.d]), filter(nil), rowset=16
2635access([t2.__pk_increment], [t2.c], [t2.a], [t2.b], [t2.d]), partitions(p0)
2636limit(5), offset(nil), is_index_back=false, is_global_index=false,
2637range_key([t2.__pk_increment]), range(MIN ; MAX)always true
2638UPDATE t2 SET c = 10 LIMIT 5;
2639ROLLBACK;
2640START TRANSACTION;
2641EXPLAIN BASIC UPDATE t2 SET c = 10 ORDER BY a, b DESC LIMIT 5;
2642Query Plan
2643=================================
2644|ID|OPERATOR |NAME |
2645---------------------------------
2646|0 |UPDATE | |
2647|1 |└─TOP-N SORT | |
2648|2 | └─TABLE FULL SCAN|t2(idx2)|
2649=================================
2650Outputs & filters:
2651-------------------------------------
26520 - output(nil), filter(nil)
2653table_columns([{t2: ({t2: (t2.__pk_increment, t2.a, t2.b, t2.c, t2.d)})}]),
2654update([t2.c=column_conv(CHAR,utf8mb4_general_ci,length:2,NULL,cast(inner_trim(2, cast(' ', VARCHAR(1048576)), cast(10, VARCHAR(1048576))), CHAR(1048576)))])
26551 - output([t2.__pk_increment], [t2.a], [t2.b], [t2.c], [t2.d]), filter(nil), rowset=16
2656sort_keys([t2.a, ASC], [t2.b, DESC]), topn(5), prefix_pos(1)
26572 - output([t2.__pk_increment], [t2.c], [t2.a], [t2.b], [t2.d]), filter(nil), rowset=16
2658access([t2.__pk_increment], [t2.c], [t2.a], [t2.b], [t2.d]), partitions(p0)
2659is_index_back=true, is_global_index=false,
2660range_key([t2.a], [t2.b], [t2.__pk_increment]), range(MIN,MIN,MIN ; MAX,MAX,MAX)always true
2661UPDATE t2 SET c = 10 ORDER BY a, b DESC LIMIT 5;
2662ROLLBACK;
2663DROP TABLE t1, t2;
2664
2665drop table if exists table10_bigint;
2666CREATE TABLE table10_bigint (col_char_34_key char(34),col_char_24 char(24),col_char_48_unique_index char(48),col_char_26_unique_index char(26),col_char_36 char(36),col_char_26 char(26),col_char_20 char(20),col_char_37 char(37),col_char_29_key char(29),pk bigint,col_char_20_unique_index char(20),col_char_39 char(39),col_char_23 char(23),col_char_28_key char(28),col_char_45 char(45),col_char_40_unique_index char(40),col_char_43_unique_index char(43),col_char_21_key char(21),col_char_29 char(29),col_char_25_key char(25),col_timestamp_6 timestamp(6) NULL DEFAULT NULL,col_char_32_key char(32),col_char_22 char(22),col_char_45_key char(45),col_char_20_key char(20),col_char_35_key char(35),col_char_22_unique_index char(22),col_char_46_unique_index char(46),col_char_28_unique_index char(28),col_char_25 char(25),col_char_42_unique_index char(42),col_char_30_key char(30),col_char_33_unique_index char(33),col_char_42 char(42),col_char_23_key char(23),col_char_36_key char(36),col_timestamp_6_unique_index timestamp(6) NULL DEFAULT NULL,col_char_37_unique_index char(37),col_char_46_key char(46),col_char_32_unique_index char(32),col_char_34_unique_index char(34),col_char_28 char(28),col_char_25_unique_index char(25),col_char_39_unique_index char(39),col_char_30 char(30),col_char_36_unique_index char(36),col_char_47_key char(47),col_char_41_unique_index char(41),col_char_42_key char(42),col_char_48 char(48),col_char_46 char(46),col_char_48_key char(48),col_char_22_key char(22),col_bigint_unique_index bigint,col_char_38 char(38),col_char_21 char(21),col_char_43 char(43),col_char_27 char(27),col_char_40_key char(40),col_char_40 char(40),col_char_47_unique_index char(47),col_char_21_unique_index char(21),col_char_33 char(33),col_char_27_unique_index char(27),col_char_44_key char(44),col_char_35_unique_index char(35),col_char_26_key char(26),col_bigint bigint,col_char_30_unique_index char(30),col_char_45_unique_index char(45),col_char_32 char(32),col_char_41 char(41),col_char_24_unique_index char(24),col_char_31_unique_index char(31),col_char_33_key char(33),col_char_39_key char(39),col_char_35 char(35),col_timestamp_6_key timestamp(6) NULL DEFAULT NULL,col_char_44 char(44),col_char_31 char(31),col_char_43_key char(43),col_char_29_unique_index char(29),col_char_37_key char(37),col_char_23_unique_index char(23),col_char_41_key char(41),col_char_38_unique_index char(38),col_char_44_unique_index char(44),col_bigint_key bigint,col_char_24_key char(24),col_char_27_key char(27),col_char_38_key char(38),col_char_47 char(47),col_char_31_key char(31),col_char_34 char(34),key idx46(col_char_34_key ),key idx31(col_char_29_key ),primary key (pk)) ;
2667EXPLAIN BASIC insert into table10_bigint values('a', 'b','c','d','e', 'f', 'h','i','j',1,'a', 'b','c','d','e', 'f', 'h','i','j','k','2001-03-04 10:10:10', 'a', 'b','c','d','e', 'f', 'h','i','j','k','j','i','o','p','u','2001-03-04 10:10:10','a', 'b','c','d','e', 'f', 'h','i','j','k','j','i','o','p','u','y',2,'a', 'b','c','d','e', 'f','h','i','j','k','j','i','o',3,'a', 'b','c','d','e', 'f', 'h','i','j','2001-03-04 10:10:10','a', 'b','c','d','e', 'f', 'h','i','j',4,'a', 'b','c','d','e', 'f');
2668Query Plan
2669============================
2670|ID|OPERATOR |NAME|
2671----------------------------
2672|0 |DISTRIBUTED INSERT| |
2673|1 |└─EXPRESSION | |
2674============================
2675Outputs & filters:
2676-------------------------------------
26770 - output(nil), filter(nil)
2678columns([{table10_bigint: ({table10_bigint: (table10_bigint.pk, table10_bigint.col_char_34_key, table10_bigint.col_char_24, table10_bigint.col_char_48_unique_index,
2679table10_bigint.col_char_26_unique_index, table10_bigint.col_char_36, table10_bigint.col_char_26, table10_bigint.col_char_20, table10_bigint.col_char_37,
2680table10_bigint.col_char_29_key, table10_bigint.col_char_20_unique_index, table10_bigint.col_char_39, table10_bigint.col_char_23, table10_bigint.col_char_28_key,
2681table10_bigint.col_char_45, table10_bigint.col_char_40_unique_index, table10_bigint.col_char_43_unique_index, table10_bigint.col_char_21_key, table10_bigint.col_char_29,
2682table10_bigint.col_char_25_key, table10_bigint.col_timestamp_6, table10_bigint.col_char_32_key, table10_bigint.col_char_22, table10_bigint.col_char_45_key,
2683table10_bigint.col_char_20_key, table10_bigint.col_char_35_key, table10_bigint.col_char_22_unique_index, table10_bigint.col_char_46_unique_index, table10_bigint.col_char_28_unique_index,
2684table10_bigint.col_char_25, table10_bigint.col_char_42_unique_index, table10_bigint.col_char_30_key, table10_bigint.col_char_33_unique_index, table10_bigint.col_char_42,
2685table10_bigint.col_char_23_key, table10_bigint.col_char_36_key, table10_bigint.col_timestamp_6_unique_index, table10_bigint.col_char_37_unique_index, table10_bigint.col_char_46_key,
2686table10_bigint.col_char_32_unique_index, table10_bigint.col_char_34_unique_index, table10_bigint.col_char_28, table10_bigint.col_char_25_unique_index,
2687table10_bigint.col_char_39_unique_index, table10_bigint.col_char_30, table10_bigint.col_char_36_unique_index, table10_bigint.col_char_47_key, table10_bigint.col_char_41_unique_index,
2688table10_bigint.col_char_42_key, table10_bigint.col_char_48, table10_bigint.col_char_46, table10_bigint.col_char_48_key, table10_bigint.col_char_22_key,
2689table10_bigint.col_bigint_unique_index, table10_bigint.col_char_38, table10_bigint.col_char_21, table10_bigint.col_char_43, table10_bigint.col_char_27,
2690table10_bigint.col_char_40_key, table10_bigint.col_char_40, table10_bigint.col_char_47_unique_index, table10_bigint.col_char_21_unique_index, table10_bigint.col_char_33,
2691table10_bigint.col_char_27_unique_index, table10_bigint.col_char_44_key, table10_bigint.col_char_35_unique_index, table10_bigint.col_char_26_key, table10_bigint.col_bigint,
2692table10_bigint.col_char_30_unique_index, table10_bigint.col_char_45_unique_index, table10_bigint.col_char_32, table10_bigint.col_char_41, table10_bigint.col_char_24_unique_index,
2693table10_bigint.col_char_31_unique_index, table10_bigint.col_char_33_key, table10_bigint.col_char_39_key, table10_bigint.col_char_35, table10_bigint.col_timestamp_6_key,
2694table10_bigint.col_char_44, table10_bigint.col_char_31, table10_bigint.col_char_43_key, table10_bigint.col_char_29_unique_index, table10_bigint.col_char_37_key,
2695table10_bigint.col_char_23_unique_index, table10_bigint.col_char_41_key, table10_bigint.col_char_38_unique_index, table10_bigint.col_char_44_unique_index,
2696table10_bigint.col_bigint_key, table10_bigint.col_char_24_key, table10_bigint.col_char_27_key, table10_bigint.col_char_38_key, table10_bigint.col_char_47,
2697table10_bigint.col_char_31_key, table10_bigint.col_char_34)})}]),
2698column_values([column_conv(BIGINT,PS:(20,0),NOT NULL,__values.pk)], [column_conv(CHAR,utf8mb4_general_ci,length:34,NULL,__values.col_char_34_key)],
2699[column_conv(CHAR,utf8mb4_general_ci,length:24,NULL,__values.col_char_24)], [column_conv(CHAR,utf8mb4_general_ci,length:48,NULL,__values.col_char_48_unique_index)],
2700[column_conv(CHAR,utf8mb4_general_ci,length:26,NULL,__values.col_char_26_unique_index)], [column_conv(CHAR,utf8mb4_general_ci,length:36,NULL,__values.col_char_36)],
2701[column_conv(CHAR,utf8mb4_general_ci,length:26,NULL,__values.col_char_26)], [column_conv(CHAR,utf8mb4_general_ci,length:20,NULL,__values.col_char_20)],
2702[column_conv(CHAR,utf8mb4_general_ci,length:37,NULL,__values.col_char_37)], [column_conv(CHAR,utf8mb4_general_ci,length:29,NULL,__values.col_char_29_key)],
2703[column_conv(CHAR,utf8mb4_general_ci,length:20,NULL,__values.col_char_20_unique_index)], [column_conv(CHAR,utf8mb4_general_ci,length:39,NULL,__values.col_char_39)],
2704[column_conv(CHAR,utf8mb4_general_ci,length:23,NULL,__values.col_char_23)], [column_conv(CHAR,utf8mb4_general_ci,length:28,NULL,__values.col_char_28_key)],
2705[column_conv(CHAR,utf8mb4_general_ci,length:45,NULL,__values.col_char_45)], [column_conv(CHAR,utf8mb4_general_ci,length:40,NULL,__values.col_char_40_unique_index)],
2706[column_conv(CHAR,utf8mb4_general_ci,length:43,NULL,__values.col_char_43_unique_index)], [column_conv(CHAR,utf8mb4_general_ci,length:21,NULL,__values.col_char_21_key)],
2707[column_conv(CHAR,utf8mb4_general_ci,length:29,NULL,__values.col_char_29)], [column_conv(CHAR,utf8mb4_general_ci,length:25,NULL,__values.col_char_25_key)],
2708[column_conv(TIMESTAMP,PS:(25,6),NULL,__values.col_timestamp_6)], [column_conv(CHAR,utf8mb4_general_ci,length:32,NULL,__values.col_char_32_key)], [column_conv(CHAR,
2709utf8mb4_general_ci,length:22,NULL,__values.col_char_22)], [column_conv(CHAR,utf8mb4_general_ci,length:45,NULL,__values.col_char_45_key)], [column_conv(CHAR,
2710utf8mb4_general_ci,length:20,NULL,__values.col_char_20_key)], [column_conv(CHAR,utf8mb4_general_ci,length:35,NULL,__values.col_char_35_key)], [column_conv(CHAR,
2711utf8mb4_general_ci,length:22,NULL,__values.col_char_22_unique_index)], [column_conv(CHAR,utf8mb4_general_ci,length:46,NULL,__values.col_char_46_unique_index)],
2712[column_conv(CHAR,utf8mb4_general_ci,length:28,NULL,__values.col_char_28_unique_index)], [column_conv(CHAR,utf8mb4_general_ci,length:25,NULL,__values.col_char_25)],
2713[column_conv(CHAR,utf8mb4_general_ci,length:42,NULL,__values.col_char_42_unique_index)], [column_conv(CHAR,utf8mb4_general_ci,length:30,NULL,__values.col_char_30_key)],
2714[column_conv(CHAR,utf8mb4_general_ci,length:33,NULL,__values.col_char_33_unique_index)], [column_conv(CHAR,utf8mb4_general_ci,length:42,NULL,__values.col_char_42)],
2715[column_conv(CHAR,utf8mb4_general_ci,length:23,NULL,__values.col_char_23_key)], [column_conv(CHAR,utf8mb4_general_ci,length:36,NULL,__values.col_char_36_key)],
2716[column_conv(TIMESTAMP,PS:(25,6),NULL,__values.col_timestamp_6_unique_index)], [column_conv(CHAR,utf8mb4_general_ci,length:37,NULL,__values.col_char_37_unique_index)],
2717[column_conv(CHAR,utf8mb4_general_ci,length:46,NULL,__values.col_char_46_key)], [column_conv(CHAR,utf8mb4_general_ci,length:32,NULL,__values.col_char_32_unique_index)],
2718[column_conv(CHAR,utf8mb4_general_ci,length:34,NULL,__values.col_char_34_unique_index)], [column_conv(CHAR,utf8mb4_general_ci,length:28,NULL,__values.col_char_28)],
2719[column_conv(CHAR,utf8mb4_general_ci,length:25,NULL,__values.col_char_25_unique_index)], [column_conv(CHAR,utf8mb4_general_ci,length:39,NULL,__values.col_char_39_unique_index)],
2720[column_conv(CHAR,utf8mb4_general_ci,length:30,NULL,__values.col_char_30)], [column_conv(CHAR,utf8mb4_general_ci,length:36,NULL,__values.col_char_36_unique_index)],
2721[column_conv(CHAR,utf8mb4_general_ci,length:47,NULL,__values.col_char_47_key)], [column_conv(CHAR,utf8mb4_general_ci,length:41,NULL,__values.col_char_41_unique_index)],
2722[column_conv(CHAR,utf8mb4_general_ci,length:42,NULL,__values.col_char_42_key)], [column_conv(CHAR,utf8mb4_general_ci,length:48,NULL,__values.col_char_48)],
2723[column_conv(CHAR,utf8mb4_general_ci,length:46,NULL,__values.col_char_46)], [column_conv(CHAR,utf8mb4_general_ci,length:48,NULL,__values.col_char_48_key)],
2724[column_conv(CHAR,utf8mb4_general_ci,length:22,NULL,__values.col_char_22_key)], [column_conv(BIGINT,PS:(20,0),NULL,__values.col_bigint_unique_index)],
2725[column_conv(CHAR,utf8mb4_general_ci,length:38,NULL,__values.col_char_38)], [column_conv(CHAR,utf8mb4_general_ci,length:21,NULL,__values.col_char_21)],
2726[column_conv(CHAR,utf8mb4_general_ci,length:43,NULL,__values.col_char_43)], [column_conv(CHAR,utf8mb4_general_ci,length:27,NULL,__values.col_char_27)],
2727[column_conv(CHAR,utf8mb4_general_ci,length:40,NULL,__values.col_char_40_key)], [column_conv(CHAR,utf8mb4_general_ci,length:40,NULL,__values.col_char_40)],
2728[column_conv(CHAR,utf8mb4_general_ci,length:47,NULL,__values.col_char_47_unique_index)], [column_conv(CHAR,utf8mb4_general_ci,length:21,NULL,__values.col_char_21_unique_index)],
2729[column_conv(CHAR,utf8mb4_general_ci,length:33,NULL,__values.col_char_33)], [column_conv(CHAR,utf8mb4_general_ci,length:27,NULL,__values.col_char_27_unique_index)],
2730[column_conv(CHAR,utf8mb4_general_ci,length:44,NULL,__values.col_char_44_key)], [column_conv(CHAR,utf8mb4_general_ci,length:35,NULL,__values.col_char_35_unique_index)],
2731[column_conv(CHAR,utf8mb4_general_ci,length:26,NULL,__values.col_char_26_key)], [column_conv(BIGINT,PS:(20,0),NULL,__values.col_bigint)], [column_conv(CHAR,
2732utf8mb4_general_ci,length:30,NULL,__values.col_char_30_unique_index)], [column_conv(CHAR,utf8mb4_general_ci,length:45,NULL,__values.col_char_45_unique_index)],
2733[column_conv(CHAR,utf8mb4_general_ci,length:32,NULL,__values.col_char_32)], [column_conv(CHAR,utf8mb4_general_ci,length:41,NULL,__values.col_char_41)],
2734[column_conv(CHAR,utf8mb4_general_ci,length:24,NULL,__values.col_char_24_unique_index)], [column_conv(CHAR,utf8mb4_general_ci,length:31,NULL,__values.col_char_31_unique_index)],
2735[column_conv(CHAR,utf8mb4_general_ci,length:33,NULL,__values.col_char_33_key)], [column_conv(CHAR,utf8mb4_general_ci,length:39,NULL,__values.col_char_39_key)],
2736[column_conv(CHAR,utf8mb4_general_ci,length:35,NULL,__values.col_char_35)], [column_conv(TIMESTAMP,PS:(25,6),NULL,__values.col_timestamp_6_key)], [column_conv(CHAR,
2737utf8mb4_general_ci,length:44,NULL,__values.col_char_44)], [column_conv(CHAR,utf8mb4_general_ci,length:31,NULL,__values.col_char_31)], [column_conv(CHAR,
2738utf8mb4_general_ci,length:43,NULL,__values.col_char_43_key)], [column_conv(CHAR,utf8mb4_general_ci,length:29,NULL,__values.col_char_29_unique_index)], [column_conv(CHAR,
2739utf8mb4_general_ci,length:37,NULL,__values.col_char_37_key)], [column_conv(CHAR,utf8mb4_general_ci,length:23,NULL,__values.col_char_23_unique_index)], [column_conv(CHAR,
2740utf8mb4_general_ci,length:41,NULL,__values.col_char_41_key)], [column_conv(CHAR,utf8mb4_general_ci,length:38,NULL,__values.col_char_38_unique_index)], [column_conv(CHAR,
2741utf8mb4_general_ci,length:44,NULL,__values.col_char_44_unique_index)], [column_conv(BIGINT,PS:(20,0),NULL,__values.col_bigint_key)], [column_conv(CHAR,utf8mb4_general_ci,
2742length:24,NULL,__values.col_char_24_key)], [column_conv(CHAR,utf8mb4_general_ci,length:27,NULL,__values.col_char_27_key)], [column_conv(CHAR,utf8mb4_general_ci,
2743length:38,NULL,__values.col_char_38_key)], [column_conv(CHAR,utf8mb4_general_ci,length:47,NULL,__values.col_char_47)], [column_conv(CHAR,utf8mb4_general_ci,
2744length:31,NULL,__values.col_char_31_key)], [column_conv(CHAR,utf8mb4_general_ci,length:34,NULL,__values.col_char_34)])
27451 - output([__values.col_char_34_key], [__values.col_char_24], [__values.col_char_48_unique_index], [__values.col_char_26_unique_index], [__values.col_char_36],
2746[__values.col_char_26], [__values.col_char_20], [__values.col_char_37], [__values.col_char_29_key], [__values.pk], [__values.col_char_20_unique_index],
2747[__values.col_char_39], [__values.col_char_23], [__values.col_char_28_key], [__values.col_char_45], [__values.col_char_40_unique_index], [__values.col_char_43_unique_index],
2748[__values.col_char_21_key], [__values.col_char_29], [__values.col_char_25_key], [__values.col_timestamp_6], [__values.col_char_32_key], [__values.col_char_22],
2749[__values.col_char_45_key], [__values.col_char_20_key], [__values.col_char_35_key], [__values.col_char_22_unique_index], [__values.col_char_46_unique_index],
2750[__values.col_char_28_unique_index], [__values.col_char_25], [__values.col_char_42_unique_index], [__values.col_char_30_key], [__values.col_char_33_unique_index],
2751[__values.col_char_42], [__values.col_char_23_key], [__values.col_char_36_key], [__values.col_timestamp_6_unique_index], [__values.col_char_37_unique_index],
2752[__values.col_char_46_key], [__values.col_char_32_unique_index], [__values.col_char_34_unique_index], [__values.col_char_28], [__values.col_char_25_unique_index],
2753[__values.col_char_39_unique_index], [__values.col_char_30], [__values.col_char_36_unique_index], [__values.col_char_47_key], [__values.col_char_41_unique_index],
2754[__values.col_char_42_key], [__values.col_char_48], [__values.col_char_46], [__values.col_char_48_key], [__values.col_char_22_key], [__values.col_bigint_unique_index],
2755[__values.col_char_38], [__values.col_char_21], [__values.col_char_43], [__values.col_char_27], [__values.col_char_40_key], [__values.col_char_40], [__values.col_char_47_unique_index],
2756[__values.col_char_21_unique_index], [__values.col_char_33], [__values.col_char_27_unique_index], [__values.col_char_44_key], [__values.col_char_35_unique_index],
2757[__values.col_char_26_key], [__values.col_bigint], [__values.col_char_30_unique_index], [__values.col_char_45_unique_index], [__values.col_char_32], [__values.col_char_41],
2758[__values.col_char_24_unique_index], [__values.col_char_31_unique_index], [__values.col_char_33_key], [__values.col_char_39_key], [__values.col_char_35],
2759[__values.col_timestamp_6_key], [__values.col_char_44], [__values.col_char_31], [__values.col_char_43_key], [__values.col_char_29_unique_index], [__values.col_char_37_key],
2760[__values.col_char_23_unique_index], [__values.col_char_41_key], [__values.col_char_38_unique_index], [__values.col_char_44_unique_index], [__values.col_bigint_key],
2761[__values.col_char_24_key], [__values.col_char_27_key], [__values.col_char_38_key], [__values.col_char_47], [__values.col_char_31_key], [__values.col_char_34]), filter(nil)
2762values({'a', 'b', 'c', 'd', 'e', 'f', 'h', 'i', 'j', 1, 'a', 'b', 'c', 'd', 'e', 'f', 'h', 'i', 'j', 'k', '2001-03-04 10:10:10', 'a', 'b', 'c', 'd',
2763'e', 'f', 'h', 'i', 'j', 'k', 'j', 'i', 'o', 'p', 'u', '2001-03-04 10:10:10', 'a', 'b', 'c', 'd', 'e', 'f', 'h', 'i', 'j', 'k', 'j', 'i', 'o', 'p', 'u',
2764'y', 2, 'a', 'b', 'c', 'd', 'e', 'f', 'h', 'i', 'j', 'k', 'j', 'i', 'o', 3, 'a', 'b', 'c', 'd', 'e', 'f', 'h', 'i', 'j', '2001-03-04 10:10:10', 'a', 'b',
2765'c', 'd', 'e', 'f', 'h', 'i', 'j', 4, 'a', 'b', 'c', 'd', 'e', 'f'})
2766insert into table10_bigint values('a', 'b','c','d','e', 'f', 'h','i','j',1,'a', 'b','c','d','e', 'f', 'h','i','j','k','2001-03-04 10:10:10', 'a', 'b','c','d','e', 'f', 'h','i','j','k','j','i','o','p','u','2001-03-04 10:10:10','a', 'b','c','d','e', 'f', 'h','i','j','k','j','i','o','p','u','y',2,'a', 'b','c','d','e', 'f','h','i','j','k','j','i','o',3,'a', 'b','c','d','e', 'f', 'h','i','j','2001-03-04 10:10:10','a', 'b','c','d','e', 'f', 'h','i','j',4,'a', 'b','c','d','e', 'f');
2767EXPLAIN BASIC UPDATE table10_bigint SET col_char_20 = 'a' ;
2768Query Plan
2769=====================================
2770|ID|OPERATOR |NAME |
2771-------------------------------------
2772|0 |UPDATE | |
2773|1 |└─TABLE FULL SCAN|table10_bigint|
2774=====================================
2775Outputs & filters:
2776-------------------------------------
27770 - output(nil), filter(nil)
2778table_columns([{table10_bigint: ({table10_bigint: (table10_bigint.pk, table10_bigint.col_char_34_key, table10_bigint.col_char_24, table10_bigint.col_char_48_unique_index,
2779table10_bigint.col_char_26_unique_index, table10_bigint.col_char_36, table10_bigint.col_char_26, table10_bigint.col_char_20, table10_bigint.col_char_37,
2780table10_bigint.col_char_29_key, table10_bigint.col_char_20_unique_index, table10_bigint.col_char_39, table10_bigint.col_char_23, table10_bigint.col_char_28_key,
2781table10_bigint.col_char_45, table10_bigint.col_char_40_unique_index, table10_bigint.col_char_43_unique_index, table10_bigint.col_char_21_key, table10_bigint.col_char_29,
2782table10_bigint.col_char_25_key, table10_bigint.col_timestamp_6, table10_bigint.col_char_32_key, table10_bigint.col_char_22, table10_bigint.col_char_45_key,
2783table10_bigint.col_char_20_key, table10_bigint.col_char_35_key, table10_bigint.col_char_22_unique_index, table10_bigint.col_char_46_unique_index, table10_bigint.col_char_28_unique_index,
2784table10_bigint.col_char_25, table10_bigint.col_char_42_unique_index, table10_bigint.col_char_30_key, table10_bigint.col_char_33_unique_index, table10_bigint.col_char_42,
2785table10_bigint.col_char_23_key, table10_bigint.col_char_36_key, table10_bigint.col_timestamp_6_unique_index, table10_bigint.col_char_37_unique_index, table10_bigint.col_char_46_key,
2786table10_bigint.col_char_32_unique_index, table10_bigint.col_char_34_unique_index, table10_bigint.col_char_28, table10_bigint.col_char_25_unique_index,
2787table10_bigint.col_char_39_unique_index, table10_bigint.col_char_30, table10_bigint.col_char_36_unique_index, table10_bigint.col_char_47_key, table10_bigint.col_char_41_unique_index,
2788table10_bigint.col_char_42_key, table10_bigint.col_char_48, table10_bigint.col_char_46, table10_bigint.col_char_48_key, table10_bigint.col_char_22_key,
2789table10_bigint.col_bigint_unique_index, table10_bigint.col_char_38, table10_bigint.col_char_21, table10_bigint.col_char_43, table10_bigint.col_char_27,
2790table10_bigint.col_char_40_key, table10_bigint.col_char_40, table10_bigint.col_char_47_unique_index, table10_bigint.col_char_21_unique_index, table10_bigint.col_char_33,
2791table10_bigint.col_char_27_unique_index, table10_bigint.col_char_44_key, table10_bigint.col_char_35_unique_index, table10_bigint.col_char_26_key, table10_bigint.col_bigint,
2792table10_bigint.col_char_30_unique_index, table10_bigint.col_char_45_unique_index, table10_bigint.col_char_32, table10_bigint.col_char_41, table10_bigint.col_char_24_unique_index,
2793table10_bigint.col_char_31_unique_index, table10_bigint.col_char_33_key, table10_bigint.col_char_39_key, table10_bigint.col_char_35, table10_bigint.col_timestamp_6_key,
2794table10_bigint.col_char_44, table10_bigint.col_char_31, table10_bigint.col_char_43_key, table10_bigint.col_char_29_unique_index, table10_bigint.col_char_37_key,
2795table10_bigint.col_char_23_unique_index, table10_bigint.col_char_41_key, table10_bigint.col_char_38_unique_index, table10_bigint.col_char_44_unique_index,
2796table10_bigint.col_bigint_key, table10_bigint.col_char_24_key, table10_bigint.col_char_27_key, table10_bigint.col_char_38_key, table10_bigint.col_char_47,
2797table10_bigint.col_char_31_key, table10_bigint.col_char_34)})}]),
2798update([table10_bigint.col_char_20=column_conv(CHAR,utf8mb4_general_ci,length:20,NULL,cast(inner_trim(2, cast(' ', VARCHAR(1048576)), 'a'), CHAR(1048576)))])
27991 - output([table10_bigint.pk], [table10_bigint.col_char_20], [table10_bigint.col_char_34_key], [table10_bigint.col_char_24], [table10_bigint.col_char_48_unique_index],
2800[table10_bigint.col_char_26_unique_index], [table10_bigint.col_char_36], [table10_bigint.col_char_26], [table10_bigint.col_char_37], [table10_bigint.col_char_29_key],
2801[table10_bigint.col_char_20_unique_index], [table10_bigint.col_char_39], [table10_bigint.col_char_23], [table10_bigint.col_char_28_key], [table10_bigint.col_char_45],
2802[table10_bigint.col_char_40_unique_index], [table10_bigint.col_char_43_unique_index], [table10_bigint.col_char_21_key], [table10_bigint.col_char_29], [table10_bigint.col_char_25_key],
2803[table10_bigint.col_timestamp_6], [table10_bigint.col_char_32_key], [table10_bigint.col_char_22], [table10_bigint.col_char_45_key], [table10_bigint.col_char_20_key],
2804[table10_bigint.col_char_35_key], [table10_bigint.col_char_22_unique_index], [table10_bigint.col_char_46_unique_index], [table10_bigint.col_char_28_unique_index],
2805[table10_bigint.col_char_25], [table10_bigint.col_char_42_unique_index], [table10_bigint.col_char_30_key], [table10_bigint.col_char_33_unique_index], [table10_bigint.col_char_42],
2806[table10_bigint.col_char_23_key], [table10_bigint.col_char_36_key], [table10_bigint.col_timestamp_6_unique_index], [table10_bigint.col_char_37_unique_index],
2807[table10_bigint.col_char_46_key], [table10_bigint.col_char_32_unique_index], [table10_bigint.col_char_34_unique_index], [table10_bigint.col_char_28], [table10_bigint.col_char_25_unique_index],
2808[table10_bigint.col_char_39_unique_index], [table10_bigint.col_char_30], [table10_bigint.col_char_36_unique_index], [table10_bigint.col_char_47_key], [table10_bigint.col_char_41_unique_index],
2809[table10_bigint.col_char_42_key], [table10_bigint.col_char_48], [table10_bigint.col_char_46], [table10_bigint.col_char_48_key], [table10_bigint.col_char_22_key],
2810[table10_bigint.col_bigint_unique_index], [table10_bigint.col_char_38], [table10_bigint.col_char_21], [table10_bigint.col_char_43], [table10_bigint.col_char_27],
2811[table10_bigint.col_char_40_key], [table10_bigint.col_char_40], [table10_bigint.col_char_47_unique_index], [table10_bigint.col_char_21_unique_index], [table10_bigint.col_char_33],
2812[table10_bigint.col_char_27_unique_index], [table10_bigint.col_char_44_key], [table10_bigint.col_char_35_unique_index], [table10_bigint.col_char_26_key],
2813[table10_bigint.col_bigint], [table10_bigint.col_char_30_unique_index], [table10_bigint.col_char_45_unique_index], [table10_bigint.col_char_32], [table10_bigint.col_char_41],
2814[table10_bigint.col_char_24_unique_index], [table10_bigint.col_char_31_unique_index], [table10_bigint.col_char_33_key], [table10_bigint.col_char_39_key],
2815[table10_bigint.col_char_35], [table10_bigint.col_timestamp_6_key], [table10_bigint.col_char_44], [table10_bigint.col_char_31], [table10_bigint.col_char_43_key],
2816[table10_bigint.col_char_29_unique_index], [table10_bigint.col_char_37_key], [table10_bigint.col_char_23_unique_index], [table10_bigint.col_char_41_key],
2817[table10_bigint.col_char_38_unique_index], [table10_bigint.col_char_44_unique_index], [table10_bigint.col_bigint_key], [table10_bigint.col_char_24_key],
2818[table10_bigint.col_char_27_key], [table10_bigint.col_char_38_key], [table10_bigint.col_char_47], [table10_bigint.col_char_31_key], [table10_bigint.col_char_34]), filter(nil), rowset=16
2819access([table10_bigint.pk], [table10_bigint.col_char_20], [table10_bigint.col_char_34_key], [table10_bigint.col_char_24], [table10_bigint.col_char_48_unique_index],
2820[table10_bigint.col_char_26_unique_index], [table10_bigint.col_char_36], [table10_bigint.col_char_26], [table10_bigint.col_char_37], [table10_bigint.col_char_29_key],
2821[table10_bigint.col_char_20_unique_index], [table10_bigint.col_char_39], [table10_bigint.col_char_23], [table10_bigint.col_char_28_key], [table10_bigint.col_char_45],
2822[table10_bigint.col_char_40_unique_index], [table10_bigint.col_char_43_unique_index], [table10_bigint.col_char_21_key], [table10_bigint.col_char_29], [table10_bigint.col_char_25_key],
2823[table10_bigint.col_timestamp_6], [table10_bigint.col_char_32_key], [table10_bigint.col_char_22], [table10_bigint.col_char_45_key], [table10_bigint.col_char_20_key],
2824[table10_bigint.col_char_35_key], [table10_bigint.col_char_22_unique_index], [table10_bigint.col_char_46_unique_index], [table10_bigint.col_char_28_unique_index],
2825[table10_bigint.col_char_25], [table10_bigint.col_char_42_unique_index], [table10_bigint.col_char_30_key], [table10_bigint.col_char_33_unique_index], [table10_bigint.col_char_42],
2826[table10_bigint.col_char_23_key], [table10_bigint.col_char_36_key], [table10_bigint.col_timestamp_6_unique_index], [table10_bigint.col_char_37_unique_index],
2827[table10_bigint.col_char_46_key], [table10_bigint.col_char_32_unique_index], [table10_bigint.col_char_34_unique_index], [table10_bigint.col_char_28], [table10_bigint.col_char_25_unique_index],
2828[table10_bigint.col_char_39_unique_index], [table10_bigint.col_char_30], [table10_bigint.col_char_36_unique_index], [table10_bigint.col_char_47_key], [table10_bigint.col_char_41_unique_index],
2829[table10_bigint.col_char_42_key], [table10_bigint.col_char_48], [table10_bigint.col_char_46], [table10_bigint.col_char_48_key], [table10_bigint.col_char_22_key],
2830[table10_bigint.col_bigint_unique_index], [table10_bigint.col_char_38], [table10_bigint.col_char_21], [table10_bigint.col_char_43], [table10_bigint.col_char_27],
2831[table10_bigint.col_char_40_key], [table10_bigint.col_char_40], [table10_bigint.col_char_47_unique_index], [table10_bigint.col_char_21_unique_index], [table10_bigint.col_char_33],
2832[table10_bigint.col_char_27_unique_index], [table10_bigint.col_char_44_key], [table10_bigint.col_char_35_unique_index], [table10_bigint.col_char_26_key],
2833[table10_bigint.col_bigint], [table10_bigint.col_char_30_unique_index], [table10_bigint.col_char_45_unique_index], [table10_bigint.col_char_32], [table10_bigint.col_char_41],
2834[table10_bigint.col_char_24_unique_index], [table10_bigint.col_char_31_unique_index], [table10_bigint.col_char_33_key], [table10_bigint.col_char_39_key],
2835[table10_bigint.col_char_35], [table10_bigint.col_timestamp_6_key], [table10_bigint.col_char_44], [table10_bigint.col_char_31], [table10_bigint.col_char_43_key],
2836[table10_bigint.col_char_29_unique_index], [table10_bigint.col_char_37_key], [table10_bigint.col_char_23_unique_index], [table10_bigint.col_char_41_key],
2837[table10_bigint.col_char_38_unique_index], [table10_bigint.col_char_44_unique_index], [table10_bigint.col_bigint_key], [table10_bigint.col_char_24_key],
2838[table10_bigint.col_char_27_key], [table10_bigint.col_char_38_key], [table10_bigint.col_char_47], [table10_bigint.col_char_31_key], [table10_bigint.col_char_34]), partitions(p0)
2839is_index_back=false, is_global_index=false,
2840range_key([table10_bigint.pk]), range(MIN ; MAX)always true
2841UPDATE table10_bigint SET col_char_20 = 'a' ;
2842EXPLAIN BASIC delete from table10_bigint;
2843Query Plan
2844=====================================
2845|ID|OPERATOR |NAME |
2846-------------------------------------
2847|0 |DELETE | |
2848|1 |└─TABLE FULL SCAN|table10_bigint|
2849=====================================
2850Outputs & filters:
2851-------------------------------------
28520 - output(nil), filter(nil)
2853table_columns([{table10_bigint: ({table10_bigint: (table10_bigint.pk, table10_bigint.col_char_34_key, table10_bigint.col_char_24, table10_bigint.col_char_48_unique_index,
2854table10_bigint.col_char_26_unique_index, table10_bigint.col_char_36, table10_bigint.col_char_26, table10_bigint.col_char_20, table10_bigint.col_char_37,
2855table10_bigint.col_char_29_key, table10_bigint.col_char_20_unique_index, table10_bigint.col_char_39, table10_bigint.col_char_23, table10_bigint.col_char_28_key,
2856table10_bigint.col_char_45, table10_bigint.col_char_40_unique_index, table10_bigint.col_char_43_unique_index, table10_bigint.col_char_21_key, table10_bigint.col_char_29,
2857table10_bigint.col_char_25_key, table10_bigint.col_timestamp_6, table10_bigint.col_char_32_key, table10_bigint.col_char_22, table10_bigint.col_char_45_key,
2858table10_bigint.col_char_20_key, table10_bigint.col_char_35_key, table10_bigint.col_char_22_unique_index, table10_bigint.col_char_46_unique_index, table10_bigint.col_char_28_unique_index,
2859table10_bigint.col_char_25, table10_bigint.col_char_42_unique_index, table10_bigint.col_char_30_key, table10_bigint.col_char_33_unique_index, table10_bigint.col_char_42,
2860table10_bigint.col_char_23_key, table10_bigint.col_char_36_key, table10_bigint.col_timestamp_6_unique_index, table10_bigint.col_char_37_unique_index, table10_bigint.col_char_46_key,
2861table10_bigint.col_char_32_unique_index, table10_bigint.col_char_34_unique_index, table10_bigint.col_char_28, table10_bigint.col_char_25_unique_index,
2862table10_bigint.col_char_39_unique_index, table10_bigint.col_char_30, table10_bigint.col_char_36_unique_index, table10_bigint.col_char_47_key, table10_bigint.col_char_41_unique_index,
2863table10_bigint.col_char_42_key, table10_bigint.col_char_48, table10_bigint.col_char_46, table10_bigint.col_char_48_key, table10_bigint.col_char_22_key,
2864table10_bigint.col_bigint_unique_index, table10_bigint.col_char_38, table10_bigint.col_char_21, table10_bigint.col_char_43, table10_bigint.col_char_27,
2865table10_bigint.col_char_40_key, table10_bigint.col_char_40, table10_bigint.col_char_47_unique_index, table10_bigint.col_char_21_unique_index, table10_bigint.col_char_33,
2866table10_bigint.col_char_27_unique_index, table10_bigint.col_char_44_key, table10_bigint.col_char_35_unique_index, table10_bigint.col_char_26_key, table10_bigint.col_bigint,
2867table10_bigint.col_char_30_unique_index, table10_bigint.col_char_45_unique_index, table10_bigint.col_char_32, table10_bigint.col_char_41, table10_bigint.col_char_24_unique_index,
2868table10_bigint.col_char_31_unique_index, table10_bigint.col_char_33_key, table10_bigint.col_char_39_key, table10_bigint.col_char_35, table10_bigint.col_timestamp_6_key,
2869table10_bigint.col_char_44, table10_bigint.col_char_31, table10_bigint.col_char_43_key, table10_bigint.col_char_29_unique_index, table10_bigint.col_char_37_key,
2870table10_bigint.col_char_23_unique_index, table10_bigint.col_char_41_key, table10_bigint.col_char_38_unique_index, table10_bigint.col_char_44_unique_index,
2871table10_bigint.col_bigint_key, table10_bigint.col_char_24_key, table10_bigint.col_char_27_key, table10_bigint.col_char_38_key, table10_bigint.col_char_47,
2872table10_bigint.col_char_31_key, table10_bigint.col_char_34)})}])
28731 - output([table10_bigint.pk], [table10_bigint.col_char_34_key], [table10_bigint.col_char_24], [table10_bigint.col_char_48_unique_index], [table10_bigint.col_char_26_unique_index],
2874[table10_bigint.col_char_36], [table10_bigint.col_char_26], [table10_bigint.col_char_20], [table10_bigint.col_char_37], [table10_bigint.col_char_29_key],
2875[table10_bigint.col_char_20_unique_index], [table10_bigint.col_char_39], [table10_bigint.col_char_23], [table10_bigint.col_char_28_key], [table10_bigint.col_char_45],
2876[table10_bigint.col_char_40_unique_index], [table10_bigint.col_char_43_unique_index], [table10_bigint.col_char_21_key], [table10_bigint.col_char_29], [table10_bigint.col_char_25_key],
2877[table10_bigint.col_timestamp_6], [table10_bigint.col_char_32_key], [table10_bigint.col_char_22], [table10_bigint.col_char_45_key], [table10_bigint.col_char_20_key],
2878[table10_bigint.col_char_35_key], [table10_bigint.col_char_22_unique_index], [table10_bigint.col_char_46_unique_index], [table10_bigint.col_char_28_unique_index],
2879[table10_bigint.col_char_25], [table10_bigint.col_char_42_unique_index], [table10_bigint.col_char_30_key], [table10_bigint.col_char_33_unique_index], [table10_bigint.col_char_42],
2880[table10_bigint.col_char_23_key], [table10_bigint.col_char_36_key], [table10_bigint.col_timestamp_6_unique_index], [table10_bigint.col_char_37_unique_index],
2881[table10_bigint.col_char_46_key], [table10_bigint.col_char_32_unique_index], [table10_bigint.col_char_34_unique_index], [table10_bigint.col_char_28], [table10_bigint.col_char_25_unique_index],
2882[table10_bigint.col_char_39_unique_index], [table10_bigint.col_char_30], [table10_bigint.col_char_36_unique_index], [table10_bigint.col_char_47_key], [table10_bigint.col_char_41_unique_index],
2883[table10_bigint.col_char_42_key], [table10_bigint.col_char_48], [table10_bigint.col_char_46], [table10_bigint.col_char_48_key], [table10_bigint.col_char_22_key],
2884[table10_bigint.col_bigint_unique_index], [table10_bigint.col_char_38], [table10_bigint.col_char_21], [table10_bigint.col_char_43], [table10_bigint.col_char_27],
2885[table10_bigint.col_char_40_key], [table10_bigint.col_char_40], [table10_bigint.col_char_47_unique_index], [table10_bigint.col_char_21_unique_index], [table10_bigint.col_char_33],
2886[table10_bigint.col_char_27_unique_index], [table10_bigint.col_char_44_key], [table10_bigint.col_char_35_unique_index], [table10_bigint.col_char_26_key],
2887[table10_bigint.col_bigint], [table10_bigint.col_char_30_unique_index], [table10_bigint.col_char_45_unique_index], [table10_bigint.col_char_32], [table10_bigint.col_char_41],
2888[table10_bigint.col_char_24_unique_index], [table10_bigint.col_char_31_unique_index], [table10_bigint.col_char_33_key], [table10_bigint.col_char_39_key],
2889[table10_bigint.col_char_35], [table10_bigint.col_timestamp_6_key], [table10_bigint.col_char_44], [table10_bigint.col_char_31], [table10_bigint.col_char_43_key],
2890[table10_bigint.col_char_29_unique_index], [table10_bigint.col_char_37_key], [table10_bigint.col_char_23_unique_index], [table10_bigint.col_char_41_key],
2891[table10_bigint.col_char_38_unique_index], [table10_bigint.col_char_44_unique_index], [table10_bigint.col_bigint_key], [table10_bigint.col_char_24_key],
2892[table10_bigint.col_char_27_key], [table10_bigint.col_char_38_key], [table10_bigint.col_char_47], [table10_bigint.col_char_31_key], [table10_bigint.col_char_34]), filter(nil), rowset=16
2893access([table10_bigint.pk], [table10_bigint.col_char_34_key], [table10_bigint.col_char_24], [table10_bigint.col_char_48_unique_index], [table10_bigint.col_char_26_unique_index],
2894[table10_bigint.col_char_36], [table10_bigint.col_char_26], [table10_bigint.col_char_20], [table10_bigint.col_char_37], [table10_bigint.col_char_29_key],
2895[table10_bigint.col_char_20_unique_index], [table10_bigint.col_char_39], [table10_bigint.col_char_23], [table10_bigint.col_char_28_key], [table10_bigint.col_char_45],
2896[table10_bigint.col_char_40_unique_index], [table10_bigint.col_char_43_unique_index], [table10_bigint.col_char_21_key], [table10_bigint.col_char_29], [table10_bigint.col_char_25_key],
2897[table10_bigint.col_timestamp_6], [table10_bigint.col_char_32_key], [table10_bigint.col_char_22], [table10_bigint.col_char_45_key], [table10_bigint.col_char_20_key],
2898[table10_bigint.col_char_35_key], [table10_bigint.col_char_22_unique_index], [table10_bigint.col_char_46_unique_index], [table10_bigint.col_char_28_unique_index],
2899[table10_bigint.col_char_25], [table10_bigint.col_char_42_unique_index], [table10_bigint.col_char_30_key], [table10_bigint.col_char_33_unique_index], [table10_bigint.col_char_42],
2900[table10_bigint.col_char_23_key], [table10_bigint.col_char_36_key], [table10_bigint.col_timestamp_6_unique_index], [table10_bigint.col_char_37_unique_index],
2901[table10_bigint.col_char_46_key], [table10_bigint.col_char_32_unique_index], [table10_bigint.col_char_34_unique_index], [table10_bigint.col_char_28], [table10_bigint.col_char_25_unique_index],
2902[table10_bigint.col_char_39_unique_index], [table10_bigint.col_char_30], [table10_bigint.col_char_36_unique_index], [table10_bigint.col_char_47_key], [table10_bigint.col_char_41_unique_index],
2903[table10_bigint.col_char_42_key], [table10_bigint.col_char_48], [table10_bigint.col_char_46], [table10_bigint.col_char_48_key], [table10_bigint.col_char_22_key],
2904[table10_bigint.col_bigint_unique_index], [table10_bigint.col_char_38], [table10_bigint.col_char_21], [table10_bigint.col_char_43], [table10_bigint.col_char_27],
2905[table10_bigint.col_char_40_key], [table10_bigint.col_char_40], [table10_bigint.col_char_47_unique_index], [table10_bigint.col_char_21_unique_index], [table10_bigint.col_char_33],
2906[table10_bigint.col_char_27_unique_index], [table10_bigint.col_char_44_key], [table10_bigint.col_char_35_unique_index], [table10_bigint.col_char_26_key],
2907[table10_bigint.col_bigint], [table10_bigint.col_char_30_unique_index], [table10_bigint.col_char_45_unique_index], [table10_bigint.col_char_32], [table10_bigint.col_char_41],
2908[table10_bigint.col_char_24_unique_index], [table10_bigint.col_char_31_unique_index], [table10_bigint.col_char_33_key], [table10_bigint.col_char_39_key],
2909[table10_bigint.col_char_35], [table10_bigint.col_timestamp_6_key], [table10_bigint.col_char_44], [table10_bigint.col_char_31], [table10_bigint.col_char_43_key],
2910[table10_bigint.col_char_29_unique_index], [table10_bigint.col_char_37_key], [table10_bigint.col_char_23_unique_index], [table10_bigint.col_char_41_key],
2911[table10_bigint.col_char_38_unique_index], [table10_bigint.col_char_44_unique_index], [table10_bigint.col_bigint_key], [table10_bigint.col_char_24_key],
2912[table10_bigint.col_char_27_key], [table10_bigint.col_char_38_key], [table10_bigint.col_char_47], [table10_bigint.col_char_31_key], [table10_bigint.col_char_34]), partitions(p0)
2913is_index_back=false, is_global_index=false,
2914range_key([table10_bigint.pk]), range(MIN ; MAX)always true
2915delete from table10_bigint;
2916alter system set ob_enable_batched_multi_statement=false;
2917DROP TABLE /*! IF EXISTS*/ table10_bigint;
2918
2919drop table if exists t1,t2;
2920drop view if exists update_view, update_view1;
2921create table t1 (c1 int, c2 int, c3 int);
2922create table t2 (c1 int, c2 int, c3 int);
2923create view update_view (c1,c2) as select t1.c2 as c1, t2.c2 as c2 from t1, t2 where t1.c1 = t2.c1;
2924create view update_view1 (c1,c2) as select t1.c2 as c1, t2.c2 as c2 from t1 join t2 on t1.c1 = t2.c1;
2925update t1, t2 set t1.c2 = t2.c2 where t1.c1 = t2.c1 order by t2.c2;
2926ERROR HY000: Incorrect usage of UPDATE and ORDER BY
2927update t1 join t2 on t1.c1 = t2.c1 set t1.c2 = t2.c2 order by t2.c2;
2928ERROR HY000: Incorrect usage of UPDATE and ORDER BY
2929update t1 left join t2 on t1.c1 = t2.c1 set t1.c2 = t2.c2 order by t2.c2;
2930ERROR HY000: Incorrect usage of UPDATE and ORDER BY
2931update update_view set c1 = c2 order by c2;
2932ERROR HY000: Incorrect usage of UPDATE and ORDER BY
2933update update_view1 set c1 = c2 order by c2;
2934ERROR HY000: Incorrect usage of UPDATE and ORDER BY
2935update t1, t2 set t1.c2 = t2.c2 where t1.c1 = t2.c1 limit 10;
2936ERROR HY000: Incorrect usage of UPDATE and LIMIT
2937update t1 join t2 on t1.c1 = t2.c1 set t1.c2 = t2.c2 limit 10;
2938ERROR HY000: Incorrect usage of UPDATE and LIMIT
2939update t1 left join t2 on t1.c1 = t2.c1 set t1.c2 = t2.c2 limit 10;
2940ERROR HY000: Incorrect usage of UPDATE and LIMIT
2941update update_view set c1 = c2 limit 10;
2942ERROR HY000: Incorrect usage of UPDATE and LIMIT
2943update update_view1 set c1 = c2 limit 10;
2944ERROR HY000: Incorrect usage of UPDATE and LIMIT
2945drop view update_view;
2946drop view update_view1;
2947drop table t1;
2948drop table t2;
2949
2950drop table if exists gf_ar_mthly_bill;
2951set binlog_row_image='MINIMAL';
2952CREATE TABLE `gf_ar_mthly_bill` (
2953`tnt_inst_id` varchar(8) COLLATE utf8mb4_bin NOT NULL COMMENT '租户机构id',
2954`bill_no` varchar(64) COLLATE utf8mb4_bin NOT NULL COMMENT '账单号',
2955`ip_id` varchar(32) COLLATE utf8mb4_bin NOT NULL COMMENT '结算对象ipid',
2956`ip_role_id` varchar(32) COLLATE utf8mb4_bin NOT NULL COMMENT '结算对象pid',
2957`inst_id` varchar(32) COLLATE utf8mb4_bin NOT NULL COMMENT '分支机构',
2958`pd_code` varchar(64) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '产品码',
2959`ar_no` varchar(34) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '合约号',
2960`bill_tp` varchar(2) COLLATE utf8mb4_bin NOT NULL COMMENT '账单类型',
2961`setl_tp` varchar(2) COLLATE utf8mb4_bin NOT NULL COMMENT '结算方式',
2962`bill_st` varchar(2) COLLATE utf8mb4_bin NOT NULL COMMENT '核销状态',
2963`bill_strt_dt` varchar(8) COLLATE utf8mb4_bin NOT NULL COMMENT '账单开始日期',
2964`bill_end_dt` varchar(8) COLLATE utf8mb4_bin NOT NULL COMMENT '账单结束日期',
2965`bill_mth` varchar(6) COLLATE utf8mb4_bin NOT NULL COMMENT '账单月份',
2966`acrd_dt` varchar(8) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '应收日期',
2967`gmt_pay` timestamp(6) NULL DEFAULT NULL COMMENT '付款时间',
2968`payee_ac` varchar(34) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '收款方账号',
2969`payer_ac` varchar(34) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '付款方账号',
2970`pay_way` varchar(2) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '支付方式',
2971`pay_orig` varchar(2) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '支付来源',
2972`clcn_bsc_amt` decimal(25,4) DEFAULT NULL COMMENT '计算交易量',
2973`clcn_bsc_tp` varchar(2) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '计算依据',
2974`clcn_mthd` varchar(2) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '计算方法',
2975`chrg_itm_code` varchar(64) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '收费项编码',
2976`ccy` varchar(3) COLLATE utf8mb4_bin NOT NULL COMMENT '币种',
2977`bill_amt` bigint(20) NOT NULL COMMENT '账单金额',
2978`adj_amt` bigint(20) NOT NULL COMMENT '调整金额',
2979`rcvd_amt` bigint(20) NOT NULL COMMENT '已收金额',
2980`tax_tp` varchar(16) COLLATE utf8mb4_bin NOT NULL COMMENT '税种 01:增值税 02:营业税',
2981`tax_rate` decimal(10,8) NOT NULL COMMENT '税率',
2982`tax_amt` bigint(20) NOT NULL COMMENT '税额',
2983`exn_inf` varchar(4000) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '扩展信息',
2984`anl_dmsn1` varchar(1000) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '分析维度1',
2985`anl_dmsn2` varchar(1000) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '分析维度2',
2986`anl_dmsn3` varchar(1000) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '分析维度3',
2987`anl_dmsn4` varchar(1000) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '分析维度4',
2988`wrtof_dtl_cnt` bigint(20) DEFAULT NULL COMMENT '已核销明细数量',
2989`to_wrtof_dtl_cnt` bigint(20) DEFAULT NULL COMMENT '待核销明细数量',
2990`rcrd_id` varchar(64) COLLATE utf8mb4_bin NOT NULL COMMENT '数据唯一ID',
2991`last_moder` varchar(32) COLLATE utf8mb4_bin NOT NULL COMMENT '最近修改人',
2992`gmt_create` timestamp(6) NOT NULL COMMENT '创建时间',
2993`gmt_modified` timestamp(6) NOT NULL COMMENT '修改时间',
2994`charge_tp` varchar(32) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '计收费环境类型 01 主站云计收费 02 主站离线计收费 03 主站老计收费',
2995`stl_ip_role_id` varchar(32) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '结算对象',
2996`svc_amt` bigint(20) DEFAULT NULL COMMENT '交易金额',
2997`inved_amt` bigint(20) DEFAULT NULL COMMENT '已开票金额',
2998`chk_st` varchar(2) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '出账状态 01 初始化 02 待确认出账 03 已出账 04 客户已对账 05 对账差异',
2999`acnt_day` varchar(14) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '出账日',
3000`inv_amt` bigint(20) DEFAULT NULL COMMENT '可开票金额',
3001`rel_inv_amt` bigint(20) DEFAULT NULL COMMENT '已关联发票金额',
3002`tp` varchar(2) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '应收1 返点2',
3003`payer_ip_role_id` varchar(32) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '扣款对象pid',
3004`sgn_ip_id` varchar(32) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '签约对象ipid',
3005`sgn_ip_role_id` varchar(32) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '签约对象pid',
3006`chking_amt` bigint(20) DEFAULT '0' COMMENT '出账中金额',
3007`frz_amt` bigint(20) DEFAULT '0' COMMENT '冻结金额(用于控制流程上互斥的业务)',
3008`chked_amt` bigint(20) DEFAULT '0' COMMENT '已出账金额',
3009`writingoff_amt` bigint(20) DEFAULT '0' COMMENT '核销中金额',
3010`svc_bill_amt` bigint(20) DEFAULT NULL COMMENT '账单计费金额,计收费计费时生成的中间金额',
3011`svc_ccy` varchar(3) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '账单计费币种',
3012`env_source` varchar(16) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '环境标识',
3013`metadata_source` varchar(1024) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '元数据来源标识,包括(用户、商户、产品、合约、计费)来源',
3014`setl_time_zone` varchar(12) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '账单结算时区',
3015`actg_time_zone` varchar(12) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '账单核算时区',
3016`inter_trade_flag` varchar(1) COLLATE utf8mb4_bin DEFAULT NULL COMMENT 'Y: 是关联交易 N: 不是关联交易',
3017`actg_bill_mth` varchar(6) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '核算时区账单月份',
3018`auto_writeoff_group_no` varchar(64) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '自动核销关联组号',
3019`partition_id` varchar(4) COLLATE utf8mb4_bin GENERATED ALWAYS AS (substr(`bill_no`,23,2)) VIRTUAL,
3020PRIMARY KEY (`tnt_inst_id`, `bill_no`),
3021UNIQUE KEY `uk_tnt_inst_id_rcrd_id` (`tnt_inst_id`, `rcrd_id`) GLOBAL BLOCK_SIZE 16384,
3022KEY `idx_tnt_inst_id_acnt_day_chk_st_gmt_create` (`tnt_inst_id`, `acnt_day`, `chk_st`, `gmt_create`) GLOBAL BLOCK_SIZE 16384,
3023KEY `idx_tnt_inst_id_acnt_day_chk_st` (`tnt_inst_id`, `acnt_day`, `chk_st`) GLOBAL BLOCK_SIZE 16384,
3024KEY `idx_tnt_inst_id_ip_role_id` (`tnt_inst_id`, `ip_role_id`) LOCAL BLOCK_SIZE 16384,
3025KEY `idx_tnt_inst_id_setl_tp_bill_st` (`tnt_inst_id`, `setl_tp`, `bill_st`) GLOBAL BLOCK_SIZE 16384,
3026KEY `idx_tnt_inst_id_ar_no` (`tnt_inst_id`, `ar_no`) GLOBAL BLOCK_SIZE 16384,
3027KEY `idx_tnt_inst_id_bill_mth` (`tnt_inst_id`, `bill_mth`) GLOBAL BLOCK_SIZE 16384,
3028KEY `idx_ip_role_id_bill_mth` (`tnt_inst_id`, `ip_role_id`, `bill_mth`) LOCAL BLOCK_SIZE 16384,
3029KEY `idx_tnt_inst_id_ip_id` (`tnt_inst_id`, `ip_id`, `bill_mth`, `setl_tp`) GLOBAL BLOCK_SIZE 16384,
3030KEY `idx_acrd_dt_setl_tp_bill_st` (`tnt_inst_id`, `acrd_dt`, `setl_tp`, `bill_st`) GLOBAL BLOCK_SIZE 16384,
3031KEY `idx_tnt_inst_id_ip_role_id_bill_mth_setl_tp` (`tnt_inst_id`, `ip_role_id`, `bill_mth`, `setl_tp`) LOCAL BLOCK_SIZE 16384,
3032KEY `idx_bill_mth` (`bill_mth`, `tnt_inst_id`) GLOBAL BLOCK_SIZE 16384,
3033KEY `idx_payer_ip_role_id_bill_mth` (`tnt_inst_id`, `payer_ip_role_id`, `bill_mth`) GLOBAL BLOCK_SIZE 16384,
3034KEY `idx_ip_id_bill_mth` (`tnt_inst_id`, `ip_id`, `bill_mth`) GLOBAL BLOCK_SIZE 16384,
3035KEY `idx_policy_id_bill_mth_inst_id_type` (`tnt_inst_id`, `inst_id`, `bill_mth`, `tp`, `anl_dmsn2`) GLOBAL,
3036KEY `idx_tnt_inst_id_inst_id_tp_anl_dmsn_1_bill_mth` (`tnt_inst_id`, `inst_id`, `tp`, `anl_dmsn1`, `bill_mth`) GLOBAL,
3037KEY `idx_tnt_inst_id_inst_id_tp_anl_dmsn_3_bill_mth` (`tnt_inst_id`, `inst_id`, `tp`, `anl_dmsn3`, `bill_mth`) GLOBAL,
3038KEY `idx_tnt_inst_id_inst_id_tp_anl_dmsn_4_bill_mth` (`tnt_inst_id`, `inst_id`, `tp`, `anl_dmsn4`, `bill_mth`) GLOBAL,
3039KEY `idx_tnt_inst_id_inst_id_tp_anl_dmsn_2_bill_mth` (`tnt_inst_id`, `inst_id`, `tp`, `anl_dmsn2`, `bill_mth`) GLOBAL
3040) partition by list columns(partition_id)
3041(partition p0 values in ('00'),
3042partition p80 values in ('80'),
3043partition p81 values in ('81'),
3044partition p82 values in ('82'),
3045partition p95 values in ('95'),
3046partition p96 values in ('96'),
3047partition p97 values in ('97'),
3048partition p98 values in ('98'),
3049partition p99 values in ('99'));
3050
3051EXPLAIN BASIC insert into gf_ar_mthly_bill(tnt_inst_id, bill_no, ip_id, ip_role_id, inst_id,
3052bill_tp, setl_tp, bill_st, bill_strt_dt, bill_end_dt, bill_mth, ccy, bill_amt,
3053adj_amt, rcvd_amt, tax_tp, tax_rate, tax_amt, rcrd_id, last_moder, gmt_create, gmt_modified)
3054values('ylctest', '2018090310122000040400820033834415',
30551, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, '2021-05-17 12:09:34', '2021-05-17 12:09:34');
3056Query Plan
3057============================
3058|ID|OPERATOR |NAME|
3059----------------------------
3060|0 |DISTRIBUTED INSERT| |
3061|1 |└─EXPRESSION | |
3062============================
3063Outputs & filters:
3064-------------------------------------
30650 - output(nil), filter(nil)
3066columns([{gf_ar_mthly_bill: ({gf_ar_mthly_bill: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.bill_no, gf_ar_mthly_bill.ip_id, gf_ar_mthly_bill.ip_role_id,
3067gf_ar_mthly_bill.inst_id, gf_ar_mthly_bill.pd_code, gf_ar_mthly_bill.ar_no, gf_ar_mthly_bill.bill_tp, gf_ar_mthly_bill.setl_tp, gf_ar_mthly_bill.bill_st,
3068gf_ar_mthly_bill.bill_strt_dt, gf_ar_mthly_bill.bill_end_dt, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.acrd_dt, gf_ar_mthly_bill.gmt_pay, gf_ar_mthly_bill.payee_ac,
3069gf_ar_mthly_bill.payer_ac, gf_ar_mthly_bill.pay_way, gf_ar_mthly_bill.pay_orig, gf_ar_mthly_bill.clcn_bsc_amt, gf_ar_mthly_bill.clcn_bsc_tp, gf_ar_mthly_bill.clcn_mthd,
3070gf_ar_mthly_bill.chrg_itm_code, gf_ar_mthly_bill.ccy, gf_ar_mthly_bill.bill_amt, gf_ar_mthly_bill.adj_amt, gf_ar_mthly_bill.rcvd_amt, gf_ar_mthly_bill.tax_tp,
3071gf_ar_mthly_bill.tax_rate, gf_ar_mthly_bill.tax_amt, gf_ar_mthly_bill.exn_inf, gf_ar_mthly_bill.anl_dmsn1, gf_ar_mthly_bill.anl_dmsn2, gf_ar_mthly_bill.anl_dmsn3,
3072gf_ar_mthly_bill.anl_dmsn4, gf_ar_mthly_bill.wrtof_dtl_cnt, gf_ar_mthly_bill.to_wrtof_dtl_cnt, gf_ar_mthly_bill.rcrd_id, gf_ar_mthly_bill.last_moder, gf_ar_mthly_bill.gmt_create,
3073gf_ar_mthly_bill.gmt_modified, gf_ar_mthly_bill.charge_tp, gf_ar_mthly_bill.stl_ip_role_id, gf_ar_mthly_bill.svc_amt, gf_ar_mthly_bill.inved_amt, gf_ar_mthly_bill.chk_st,
3074gf_ar_mthly_bill.acnt_day, gf_ar_mthly_bill.inv_amt, gf_ar_mthly_bill.rel_inv_amt, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.payer_ip_role_id, gf_ar_mthly_bill.sgn_ip_id,
3075gf_ar_mthly_bill.sgn_ip_role_id, gf_ar_mthly_bill.chking_amt, gf_ar_mthly_bill.frz_amt, gf_ar_mthly_bill.chked_amt, gf_ar_mthly_bill.writingoff_amt, gf_ar_mthly_bill.svc_bill_amt,
3076gf_ar_mthly_bill.svc_ccy, gf_ar_mthly_bill.env_source, gf_ar_mthly_bill.metadata_source, gf_ar_mthly_bill.setl_time_zone, gf_ar_mthly_bill.actg_time_zone,
3077gf_ar_mthly_bill.inter_trade_flag, gf_ar_mthly_bill.actg_bill_mth, gf_ar_mthly_bill.auto_writeoff_group_no, gf_ar_mthly_bill.partition_id)}, {uk_tnt_inst_id_rcrd_id:
3078(gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.rcrd_id, gf_ar_mthly_bill.bill_no)}, {idx_tnt_inst_id_acnt_day_chk_st_gmt_create: (gf_ar_mthly_bill.tnt_inst_id,
3079gf_ar_mthly_bill.acnt_day, gf_ar_mthly_bill.chk_st, gf_ar_mthly_bill.gmt_create, gf_ar_mthly_bill.bill_no)}, {idx_tnt_inst_id_acnt_day_chk_st: (gf_ar_mthly_bill.tnt_inst_id,
3080gf_ar_mthly_bill.acnt_day, gf_ar_mthly_bill.chk_st, gf_ar_mthly_bill.bill_no)}, {idx_tnt_inst_id_setl_tp_bill_st: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.setl_tp,
3081gf_ar_mthly_bill.bill_st, gf_ar_mthly_bill.bill_no)}, {idx_tnt_inst_id_ar_no: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.ar_no, gf_ar_mthly_bill.bill_no)},
3082{idx_tnt_inst_id_bill_mth: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.bill_no)}, {idx_tnt_inst_id_ip_id: (gf_ar_mthly_bill.tnt_inst_id,
3083gf_ar_mthly_bill.ip_id, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.setl_tp, gf_ar_mthly_bill.bill_no)}, {idx_acrd_dt_setl_tp_bill_st: (gf_ar_mthly_bill.tnt_inst_id,
3084gf_ar_mthly_bill.acrd_dt, gf_ar_mthly_bill.setl_tp, gf_ar_mthly_bill.bill_st, gf_ar_mthly_bill.bill_no)}, {idx_bill_mth: (gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.tnt_inst_id,
3085gf_ar_mthly_bill.bill_no)}, {idx_payer_ip_role_id_bill_mth: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.payer_ip_role_id, gf_ar_mthly_bill.bill_mth,
3086gf_ar_mthly_bill.bill_no)}, {idx_ip_id_bill_mth: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.ip_id, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.bill_no)},
3087{idx_policy_id_bill_mth_inst_id_type: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.inst_id, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.anl_dmsn2,
3088gf_ar_mthly_bill.bill_no)}, {idx_tnt_inst_id_inst_id_tp_anl_dmsn_1_bill_mth: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.inst_id, gf_ar_mthly_bill.tp,
3089gf_ar_mthly_bill.anl_dmsn1, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.bill_no)}, {idx_tnt_inst_id_inst_id_tp_anl_dmsn_3_bill_mth: (gf_ar_mthly_bill.tnt_inst_id,
3090gf_ar_mthly_bill.inst_id, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.anl_dmsn3, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.bill_no)}, {idx_tnt_inst_id_inst_id_tp_anl_dmsn_4_bill_mth:
3091(gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.inst_id, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.anl_dmsn4, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.bill_no)},
3092{idx_tnt_inst_id_inst_id_tp_anl_dmsn_2_bill_mth: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.inst_id, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.anl_dmsn2,
3093gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.bill_no)})}]),
3094column_values([column_conv(VARCHAR,utf8mb4_bin,length:8,NOT NULL,__values.tnt_inst_id)], [column_conv(VARCHAR,utf8mb4_bin,length:64,NOT NULL,__values.bill_no)],
3095[column_conv(VARCHAR,utf8mb4_bin,length:32,NOT NULL,__values.ip_id)], [column_conv(VARCHAR,utf8mb4_bin,length:32,NOT NULL,__values.ip_role_id)], [column_conv(VARCHAR,
3096utf8mb4_bin,length:32,NOT NULL,__values.inst_id)], [column_conv(VARCHAR,utf8mb4_bin,length:64,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,
3097utf8mb4_bin,length:34,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,utf8mb4_bin,length:2,NOT NULL,__values.bill_tp)], [column_conv(VARCHAR,utf8mb4_bin,
3098length:2,NOT NULL,__values.setl_tp)], [column_conv(VARCHAR,utf8mb4_bin,length:2,NOT NULL,__values.bill_st)], [column_conv(VARCHAR,utf8mb4_bin,length:8,NOT
3099NULL,__values.bill_strt_dt)], [column_conv(VARCHAR,utf8mb4_bin,length:8,NOT NULL,__values.bill_end_dt)], [column_conv(VARCHAR,utf8mb4_bin,length:6,NOT NULL,
3100__values.bill_mth)], [column_conv(VARCHAR,utf8mb4_bin,length:8,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(TIMESTAMP,PS:(25,6),NULL,cast(NULL, TIMESTAMP(-1,
3101-1)))], [column_conv(VARCHAR,utf8mb4_bin,length:34,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,utf8mb4_bin,length:34,NULL,cast(NULL, VARCHAR(1048576)))],
3102[column_conv(VARCHAR,utf8mb4_bin,length:2,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,utf8mb4_bin,length:2,NULL,cast(NULL, VARCHAR(1048576)))],
3103[column_conv(DECIMAL_INT,PS:(25,4),NULL,cast(NULL, DECIMAL_INT(25, 4)))], [column_conv(VARCHAR,utf8mb4_bin,length:2,NULL,cast(NULL, VARCHAR(1048576)))],
3104[column_conv(VARCHAR,utf8mb4_bin,length:2,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,utf8mb4_bin,length:64,NULL,cast(NULL, VARCHAR(1048576)))],
3105[column_conv(VARCHAR,utf8mb4_bin,length:3,NOT NULL,__values.ccy)], [column_conv(BIGINT,PS:(20,0),NOT NULL,__values.bill_amt)], [column_conv(BIGINT,PS:(20,
31060),NOT NULL,__values.adj_amt)], [column_conv(BIGINT,PS:(20,0),NOT NULL,__values.rcvd_amt)], [column_conv(VARCHAR,utf8mb4_bin,length:16,NOT NULL,__values.tax_tp)],
3107[column_conv(DECIMAL_INT,PS:(10,8),NOT NULL,__values.tax_rate)], [column_conv(BIGINT,PS:(20,0),NOT NULL,__values.tax_amt)], [column_conv(VARCHAR,utf8mb4_bin,
3108length:4000,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,utf8mb4_bin,length:1000,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,
3109utf8mb4_bin,length:1000,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,utf8mb4_bin,length:1000,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,
3110utf8mb4_bin,length:1000,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(BIGINT,PS:(20,0),NULL,cast(NULL, BIGINT(20, 0)))], [column_conv(BIGINT,PS:(20,
31110),NULL,cast(NULL, BIGINT(20, 0)))], [column_conv(VARCHAR,utf8mb4_bin,length:64,NOT NULL,__values.rcrd_id)], [column_conv(VARCHAR,utf8mb4_bin,length:32,
3112NOT NULL,__values.last_moder)], [column_conv(TIMESTAMP,PS:(25,6),NOT NULL,timestamp_nvl(__values.gmt_create, cast(current_timestamp(), TIMESTAMP(25, 6))))],
3113[column_conv(TIMESTAMP,PS:(25,6),NOT NULL,timestamp_nvl(__values.gmt_modified, cast(current_timestamp(), TIMESTAMP(25, 6))))], [column_conv(VARCHAR,utf8mb4_bin,
3114length:32,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,utf8mb4_bin,length:32,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(BIGINT,PS:(20,
31150),NULL,cast(NULL, BIGINT(20, 0)))], [column_conv(BIGINT,PS:(20,0),NULL,cast(NULL, BIGINT(20, 0)))], [column_conv(VARCHAR,utf8mb4_bin,length:2,NULL,cast(NULL,
3116VARCHAR(1048576)))], [column_conv(VARCHAR,utf8mb4_bin,length:14,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(BIGINT,PS:(20,0),NULL,cast(NULL, BIGINT(20,
31170)))], [column_conv(BIGINT,PS:(20,0),NULL,cast(NULL, BIGINT(20, 0)))], [column_conv(VARCHAR,utf8mb4_bin,length:2,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,
3118utf8mb4_bin,length:32,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,utf8mb4_bin,length:32,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,
3119utf8mb4_bin,length:32,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(BIGINT,PS:(20,0),NULL,0)], [column_conv(BIGINT,PS:(20,0),NULL,0)], [column_conv(BIGINT,
3120PS:(20,0),NULL,0)], [column_conv(BIGINT,PS:(20,0),NULL,0)], [column_conv(BIGINT,PS:(20,0),NULL,cast(NULL, BIGINT(20, 0)))], [column_conv(VARCHAR,utf8mb4_bin,
3121length:3,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,utf8mb4_bin,length:16,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,utf8mb4_bin,
3122length:1024,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,utf8mb4_bin,length:12,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,utf8mb4_bin,
3123length:12,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,utf8mb4_bin,length:1,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,utf8mb4_bin,
3124length:6,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,utf8mb4_bin,length:64,NULL,cast(NULL, VARCHAR(1048576)))], [column_conv(VARCHAR,utf8mb4_bin,
3125length:4,NULL,column_conv(VARCHAR,utf8mb4_bin,length:4,NULL,substr(column_conv(VARCHAR,utf8mb4_bin,length:64,NOT NULL,__values.bill_no), 23, 2)))])
31261 - output([__values.tnt_inst_id], [__values.bill_no], [__values.ip_id], [__values.ip_role_id], [__values.inst_id], [__values.bill_tp], [__values.setl_tp],
3127[__values.bill_st], [__values.bill_strt_dt], [__values.bill_end_dt], [__values.bill_mth], [__values.ccy], [__values.bill_amt], [__values.adj_amt], [__values.rcvd_amt],
3128[__values.tax_tp], [__values.tax_rate], [__values.tax_amt], [__values.rcrd_id], [__values.last_moder], [__values.gmt_create], [__values.gmt_modified]), filter(nil)
3129values({'ylctest', '2018090310122000040400820033834415', 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, '2021-05-17 12:09:34', '2021-05-17
313012:09:34'})
3131insert into gf_ar_mthly_bill(tnt_inst_id, bill_no, ip_id, ip_role_id, inst_id,
3132bill_tp, setl_tp, bill_st, bill_strt_dt, bill_end_dt, bill_mth, ccy, bill_amt,
3133adj_amt, rcvd_amt, tax_tp, tax_rate, tax_amt, rcrd_id, last_moder, gmt_create, gmt_modified)
3134values('ylctest', '2018090310122000040400820033834415',
31351, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, '2021-05-17 12:09:34', '2021-05-17 12:09:34');
3136begin;
3137EXPLAIN BASIC update gf_ar_mthly_bill
3138set bill_st='01',
3139gmt_pay='2021-05-17 12:09:35',
3140clcn_bsc_amt='123.12',
3141bill_amt=1,
3142rcvd_amt=2,
3143tax_amt=3,
3144exn_inf='123456',
3145anl_dmsn1='123456',
3146anl_dmsn2='234567',
3147anl_dmsn3='345678',
3148anl_dmsn4='456789',
3149last_moder='ylc',
3150adj_amt=4,
3151svc_amt = 5,
3152chk_st = '06',
3153inv_amt = 6,
3154writingoff_amt = 7,
3155wrtof_dtl_cnt = 9 ,
3156to_wrtof_dtl_cnt = 8,
3157chking_amt=10,
3158chked_amt=11,
3159frz_amt=12,
3160svc_bill_amt=13,
3161gmt_modified='2021-05-17 12:09:34'
3162where
3163tnt_inst_id='ylctest' and bill_no='2018090310122000040400820033834415';
3164Query Plan
3165========================================
3166|ID|OPERATOR |NAME |
3167----------------------------------------
3168|0 |DISTRIBUTED UPDATE| |
3169|1 |└─TABLE GET |gf_ar_mthly_bill|
3170========================================
3171Outputs & filters:
3172-------------------------------------
31730 - output(nil), filter(nil)
3174table_columns([{gf_ar_mthly_bill: ({gf_ar_mthly_bill: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.bill_no, gf_ar_mthly_bill.ip_id, gf_ar_mthly_bill.ip_role_id,
3175gf_ar_mthly_bill.inst_id, gf_ar_mthly_bill.pd_code, gf_ar_mthly_bill.ar_no, gf_ar_mthly_bill.bill_tp, gf_ar_mthly_bill.setl_tp, gf_ar_mthly_bill.bill_st,
3176gf_ar_mthly_bill.bill_strt_dt, gf_ar_mthly_bill.bill_end_dt, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.acrd_dt, gf_ar_mthly_bill.gmt_pay, gf_ar_mthly_bill.payee_ac,
3177gf_ar_mthly_bill.payer_ac, gf_ar_mthly_bill.pay_way, gf_ar_mthly_bill.pay_orig, gf_ar_mthly_bill.clcn_bsc_amt, gf_ar_mthly_bill.clcn_bsc_tp, gf_ar_mthly_bill.clcn_mthd,
3178gf_ar_mthly_bill.chrg_itm_code, gf_ar_mthly_bill.ccy, gf_ar_mthly_bill.bill_amt, gf_ar_mthly_bill.adj_amt, gf_ar_mthly_bill.rcvd_amt, gf_ar_mthly_bill.tax_tp,
3179gf_ar_mthly_bill.tax_rate, gf_ar_mthly_bill.tax_amt, gf_ar_mthly_bill.exn_inf, gf_ar_mthly_bill.anl_dmsn1, gf_ar_mthly_bill.anl_dmsn2, gf_ar_mthly_bill.anl_dmsn3,
3180gf_ar_mthly_bill.anl_dmsn4, gf_ar_mthly_bill.wrtof_dtl_cnt, gf_ar_mthly_bill.to_wrtof_dtl_cnt, gf_ar_mthly_bill.rcrd_id, gf_ar_mthly_bill.last_moder, gf_ar_mthly_bill.gmt_create,
3181gf_ar_mthly_bill.gmt_modified, gf_ar_mthly_bill.charge_tp, gf_ar_mthly_bill.stl_ip_role_id, gf_ar_mthly_bill.svc_amt, gf_ar_mthly_bill.inved_amt, gf_ar_mthly_bill.chk_st,
3182gf_ar_mthly_bill.acnt_day, gf_ar_mthly_bill.inv_amt, gf_ar_mthly_bill.rel_inv_amt, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.payer_ip_role_id, gf_ar_mthly_bill.sgn_ip_id,
3183gf_ar_mthly_bill.sgn_ip_role_id, gf_ar_mthly_bill.chking_amt, gf_ar_mthly_bill.frz_amt, gf_ar_mthly_bill.chked_amt, gf_ar_mthly_bill.writingoff_amt, gf_ar_mthly_bill.svc_bill_amt,
3184gf_ar_mthly_bill.svc_ccy, gf_ar_mthly_bill.env_source, gf_ar_mthly_bill.metadata_source, gf_ar_mthly_bill.setl_time_zone, gf_ar_mthly_bill.actg_time_zone,
3185gf_ar_mthly_bill.inter_trade_flag, gf_ar_mthly_bill.actg_bill_mth, gf_ar_mthly_bill.auto_writeoff_group_no, gf_ar_mthly_bill.partition_id)}, {idx_tnt_inst_id_acnt_day_chk_st_gmt_create:
3186(gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.acnt_day, gf_ar_mthly_bill.chk_st, gf_ar_mthly_bill.gmt_create, gf_ar_mthly_bill.bill_no)}, {idx_tnt_inst_id_acnt_day_chk_st:
3187(gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.acnt_day, gf_ar_mthly_bill.chk_st, gf_ar_mthly_bill.bill_no)}, {idx_tnt_inst_id_setl_tp_bill_st: (gf_ar_mthly_bill.tnt_inst_id,
3188gf_ar_mthly_bill.setl_tp, gf_ar_mthly_bill.bill_st, gf_ar_mthly_bill.bill_no)}, {idx_acrd_dt_setl_tp_bill_st: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.acrd_dt,
3189gf_ar_mthly_bill.setl_tp, gf_ar_mthly_bill.bill_st, gf_ar_mthly_bill.bill_no)}, {idx_policy_id_bill_mth_inst_id_type: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.inst_id,
3190gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.anl_dmsn2, gf_ar_mthly_bill.bill_no)}, {idx_tnt_inst_id_inst_id_tp_anl_dmsn_1_bill_mth:
3191(gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.inst_id, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.anl_dmsn1, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.bill_no)},
3192{idx_tnt_inst_id_inst_id_tp_anl_dmsn_3_bill_mth: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.inst_id, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.anl_dmsn3,
3193gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.bill_no)}, {idx_tnt_inst_id_inst_id_tp_anl_dmsn_4_bill_mth: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.inst_id,
3194gf_ar_mthly_bill.tp, gf_ar_mthly_bill.anl_dmsn4, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.bill_no)}, {idx_tnt_inst_id_inst_id_tp_anl_dmsn_2_bill_mth:
3195(gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.inst_id, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.anl_dmsn2, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.bill_no)})}]),
3196
3197update([gf_ar_mthly_bill.bill_st=column_conv(VARCHAR,utf8mb4_bin,length:2,NOT NULL,cast('01', VARCHAR(1048576)))], [gf_ar_mthly_bill.gmt_pay=column_conv(TIMESTAMP,
3198PS:(25,6),NULL,cast('2021-05-17 12:09:35', TIMESTAMP(-1, -1)))], [gf_ar_mthly_bill.clcn_bsc_amt=column_conv(DECIMAL_INT,PS:(25,4),NULL,cast('123.12', DECIMAL_INT(25,
31994)))], [gf_ar_mthly_bill.bill_amt=column_conv(BIGINT,PS:(20,0),NOT NULL,1)], [gf_ar_mthly_bill.rcvd_amt=column_conv(BIGINT,PS:(20,0),NOT NULL,2)], [gf_ar_mthly_bill.tax_amt=column_conv(BIGINT,
3200PS:(20,0),NOT NULL,3)], [gf_ar_mthly_bill.exn_inf=column_conv(VARCHAR,utf8mb4_bin,length:4000,NULL,cast('123456', VARCHAR(1048576)))], [gf_ar_mthly_bill.anl_dmsn1=column_conv(VARCHAR,
3201utf8mb4_bin,length:1000,NULL,cast('123456', VARCHAR(1048576)))], [gf_ar_mthly_bill.anl_dmsn2=column_conv(VARCHAR,utf8mb4_bin,length:1000,NULL,cast('234567',
3202VARCHAR(1048576)))], [gf_ar_mthly_bill.anl_dmsn3=column_conv(VARCHAR,utf8mb4_bin,length:1000,NULL,cast('345678', VARCHAR(1048576)))], [gf_ar_mthly_bill.anl_dmsn4=column_conv(VARCHAR,
3203utf8mb4_bin,length:1000,NULL,cast('456789', VARCHAR(1048576)))], [gf_ar_mthly_bill.last_moder=column_conv(VARCHAR,utf8mb4_bin,length:32,NOT NULL,cast('ylc',
3204VARCHAR(1048576)))], [gf_ar_mthly_bill.adj_amt=column_conv(BIGINT,PS:(20,0),NOT NULL,4)], [gf_ar_mthly_bill.svc_amt=column_conv(BIGINT,PS:(20,0),NULL,5)],
3205[gf_ar_mthly_bill.chk_st=column_conv(VARCHAR,utf8mb4_bin,length:2,NULL,cast('06', VARCHAR(1048576)))], [gf_ar_mthly_bill.inv_amt=column_conv(BIGINT,PS:(20,
32060),NULL,6)], [gf_ar_mthly_bill.writingoff_amt=column_conv(BIGINT,PS:(20,0),NULL,7)], [gf_ar_mthly_bill.wrtof_dtl_cnt=column_conv(BIGINT,PS:(20,0),NULL,9)],
3207[gf_ar_mthly_bill.to_wrtof_dtl_cnt=column_conv(BIGINT,PS:(20,0),NULL,8)], [gf_ar_mthly_bill.chking_amt=column_conv(BIGINT,PS:(20,0),NULL,10)], [gf_ar_mthly_bill.chked_amt=column_conv(BIGINT,
3208PS:(20,0),NULL,11)], [gf_ar_mthly_bill.frz_amt=column_conv(BIGINT,PS:(20,0),NULL,12)], [gf_ar_mthly_bill.svc_bill_amt=column_conv(BIGINT,PS:(20,0),NULL,
320913)], [gf_ar_mthly_bill.gmt_modified=column_conv(TIMESTAMP,PS:(25,6),NOT NULL,timestamp_nvl(cast('2021-05-17 12:09:34', TIMESTAMP(-1, -1)), cast(current_timestamp(),
3210TIMESTAMP(25, 6))))])
32111 - output([gf_ar_mthly_bill.tnt_inst_id], [gf_ar_mthly_bill.bill_no], [column_conv(VARCHAR,utf8mb4_bin,length:4,NULL,substr(gf_ar_mthly_bill.bill_no,
321223, 2))], [gf_ar_mthly_bill.bill_st], [gf_ar_mthly_bill.gmt_pay], [gf_ar_mthly_bill.clcn_bsc_amt], [gf_ar_mthly_bill.bill_amt], [gf_ar_mthly_bill.rcvd_amt],
3213[gf_ar_mthly_bill.tax_amt], [gf_ar_mthly_bill.exn_inf], [gf_ar_mthly_bill.anl_dmsn1], [gf_ar_mthly_bill.anl_dmsn2], [gf_ar_mthly_bill.anl_dmsn3], [gf_ar_mthly_bill.anl_dmsn4],
3214[gf_ar_mthly_bill.last_moder], [gf_ar_mthly_bill.adj_amt], [gf_ar_mthly_bill.svc_amt], [gf_ar_mthly_bill.chk_st], [gf_ar_mthly_bill.inv_amt], [gf_ar_mthly_bill.writingoff_amt],
3215[gf_ar_mthly_bill.wrtof_dtl_cnt], [gf_ar_mthly_bill.to_wrtof_dtl_cnt], [gf_ar_mthly_bill.chking_amt], [gf_ar_mthly_bill.chked_amt], [gf_ar_mthly_bill.frz_amt],
3216[gf_ar_mthly_bill.svc_bill_amt], [gf_ar_mthly_bill.gmt_modified], [gf_ar_mthly_bill.ip_id], [gf_ar_mthly_bill.ip_role_id], [gf_ar_mthly_bill.inst_id],
3217[gf_ar_mthly_bill.pd_code], [gf_ar_mthly_bill.ar_no], [gf_ar_mthly_bill.bill_tp], [gf_ar_mthly_bill.setl_tp], [gf_ar_mthly_bill.bill_strt_dt], [gf_ar_mthly_bill.bill_end_dt],
3218[gf_ar_mthly_bill.bill_mth], [gf_ar_mthly_bill.acrd_dt], [gf_ar_mthly_bill.payee_ac], [gf_ar_mthly_bill.payer_ac], [gf_ar_mthly_bill.pay_way], [gf_ar_mthly_bill.pay_orig],
3219[gf_ar_mthly_bill.clcn_bsc_tp], [gf_ar_mthly_bill.clcn_mthd], [gf_ar_mthly_bill.chrg_itm_code], [gf_ar_mthly_bill.ccy], [gf_ar_mthly_bill.tax_tp], [gf_ar_mthly_bill.tax_rate],
3220[gf_ar_mthly_bill.rcrd_id], [gf_ar_mthly_bill.gmt_create], [gf_ar_mthly_bill.charge_tp], [gf_ar_mthly_bill.stl_ip_role_id], [gf_ar_mthly_bill.inved_amt],
3221[gf_ar_mthly_bill.acnt_day], [gf_ar_mthly_bill.rel_inv_amt], [gf_ar_mthly_bill.tp], [gf_ar_mthly_bill.payer_ip_role_id], [gf_ar_mthly_bill.sgn_ip_id],
3222[gf_ar_mthly_bill.sgn_ip_role_id], [gf_ar_mthly_bill.svc_ccy], [gf_ar_mthly_bill.env_source], [gf_ar_mthly_bill.metadata_source], [gf_ar_mthly_bill.setl_time_zone],
3223[gf_ar_mthly_bill.actg_time_zone], [gf_ar_mthly_bill.inter_trade_flag], [gf_ar_mthly_bill.actg_bill_mth], [gf_ar_mthly_bill.auto_writeoff_group_no]), filter(nil), rowset=16
3224access([gf_ar_mthly_bill.tnt_inst_id], [gf_ar_mthly_bill.bill_no], [gf_ar_mthly_bill.bill_st], [gf_ar_mthly_bill.gmt_pay], [gf_ar_mthly_bill.clcn_bsc_amt],
3225[gf_ar_mthly_bill.bill_amt], [gf_ar_mthly_bill.rcvd_amt], [gf_ar_mthly_bill.tax_amt], [gf_ar_mthly_bill.exn_inf], [gf_ar_mthly_bill.anl_dmsn1], [gf_ar_mthly_bill.anl_dmsn2],
3226[gf_ar_mthly_bill.anl_dmsn3], [gf_ar_mthly_bill.anl_dmsn4], [gf_ar_mthly_bill.last_moder], [gf_ar_mthly_bill.adj_amt], [gf_ar_mthly_bill.svc_amt], [gf_ar_mthly_bill.chk_st],
3227[gf_ar_mthly_bill.inv_amt], [gf_ar_mthly_bill.writingoff_amt], [gf_ar_mthly_bill.wrtof_dtl_cnt], [gf_ar_mthly_bill.to_wrtof_dtl_cnt], [gf_ar_mthly_bill.chking_amt],
3228[gf_ar_mthly_bill.chked_amt], [gf_ar_mthly_bill.frz_amt], [gf_ar_mthly_bill.svc_bill_amt], [gf_ar_mthly_bill.gmt_modified], [gf_ar_mthly_bill.ip_id], [gf_ar_mthly_bill.ip_role_id],
3229[gf_ar_mthly_bill.inst_id], [gf_ar_mthly_bill.pd_code], [gf_ar_mthly_bill.ar_no], [gf_ar_mthly_bill.bill_tp], [gf_ar_mthly_bill.setl_tp], [gf_ar_mthly_bill.bill_strt_dt],
3230[gf_ar_mthly_bill.bill_end_dt], [gf_ar_mthly_bill.bill_mth], [gf_ar_mthly_bill.acrd_dt], [gf_ar_mthly_bill.payee_ac], [gf_ar_mthly_bill.payer_ac], [gf_ar_mthly_bill.pay_way],
3231[gf_ar_mthly_bill.pay_orig], [gf_ar_mthly_bill.clcn_bsc_tp], [gf_ar_mthly_bill.clcn_mthd], [gf_ar_mthly_bill.chrg_itm_code], [gf_ar_mthly_bill.ccy], [gf_ar_mthly_bill.tax_tp],
3232[gf_ar_mthly_bill.tax_rate], [gf_ar_mthly_bill.rcrd_id], [gf_ar_mthly_bill.gmt_create], [gf_ar_mthly_bill.charge_tp], [gf_ar_mthly_bill.stl_ip_role_id],
3233[gf_ar_mthly_bill.inved_amt], [gf_ar_mthly_bill.acnt_day], [gf_ar_mthly_bill.rel_inv_amt], [gf_ar_mthly_bill.tp], [gf_ar_mthly_bill.payer_ip_role_id],
3234[gf_ar_mthly_bill.sgn_ip_id], [gf_ar_mthly_bill.sgn_ip_role_id], [gf_ar_mthly_bill.svc_ccy], [gf_ar_mthly_bill.env_source], [gf_ar_mthly_bill.metadata_source],
3235[gf_ar_mthly_bill.setl_time_zone], [gf_ar_mthly_bill.actg_time_zone], [gf_ar_mthly_bill.inter_trade_flag], [gf_ar_mthly_bill.actg_bill_mth], [gf_ar_mthly_bill.auto_writeoff_group_no]), partitions(p3)
3236is_index_back=false, is_global_index=false,
3237range_key([gf_ar_mthly_bill.tnt_inst_id], [gf_ar_mthly_bill.bill_no]), range[ylctest,2018090310122000040400820033834415 ; ylctest,2018090310122000040400820033834415],
3238
3239range_cond([gf_ar_mthly_bill.tnt_inst_id = cast('ylctest', VARCHAR(1048576))], [gf_ar_mthly_bill.bill_no = cast('2018090310122000040400820033834415',
3240VARCHAR(1048576))])
3241update gf_ar_mthly_bill
3242set bill_st='01',
3243gmt_pay='2021-05-17 12:09:35',
3244clcn_bsc_amt='123.12',
3245bill_amt=1,
3246rcvd_amt=2,
3247tax_amt=3,
3248exn_inf='123456',
3249anl_dmsn1='123456',
3250anl_dmsn2='234567',
3251anl_dmsn3='345678',
3252anl_dmsn4='456789',
3253last_moder='ylc',
3254adj_amt=4,
3255svc_amt = 5,
3256chk_st = '06',
3257inv_amt = 6,
3258writingoff_amt = 7,
3259wrtof_dtl_cnt = 9 ,
3260to_wrtof_dtl_cnt = 8,
3261chking_amt=10,
3262chked_amt=11,
3263frz_amt=12,
3264svc_bill_amt=13,
3265gmt_modified='2021-05-17 12:09:34'
3266where
3267tnt_inst_id='ylctest' and bill_no='2018090310122000040400820033834415';
3268
3269EXPLAIN BASIC select * from gf_ar_mthly_bill;
3270Query Plan
3271===============================================
3272|ID|OPERATOR |NAME |
3273-----------------------------------------------
3274|0 |PX COORDINATOR | |
3275|1 |└─EXCHANGE OUT DISTR |:EX10000 |
3276|2 | └─PX PARTITION ITERATOR| |
3277|3 | └─TABLE FULL SCAN |gf_ar_mthly_bill|
3278===============================================
3279Outputs & filters:
3280-------------------------------------
32810 - output([INTERNAL_FUNCTION(gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.bill_no, gf_ar_mthly_bill.ip_id, gf_ar_mthly_bill.ip_role_id, gf_ar_mthly_bill.inst_id,
3282gf_ar_mthly_bill.pd_code, gf_ar_mthly_bill.ar_no, gf_ar_mthly_bill.bill_tp, gf_ar_mthly_bill.setl_tp, gf_ar_mthly_bill.bill_st, gf_ar_mthly_bill.bill_strt_dt,
3283gf_ar_mthly_bill.bill_end_dt, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.acrd_dt, gf_ar_mthly_bill.gmt_pay, gf_ar_mthly_bill.payee_ac, gf_ar_mthly_bill.payer_ac,
3284gf_ar_mthly_bill.pay_way, gf_ar_mthly_bill.pay_orig, gf_ar_mthly_bill.clcn_bsc_amt, gf_ar_mthly_bill.clcn_bsc_tp, gf_ar_mthly_bill.clcn_mthd, gf_ar_mthly_bill.chrg_itm_code,
3285gf_ar_mthly_bill.ccy, gf_ar_mthly_bill.bill_amt, gf_ar_mthly_bill.adj_amt, gf_ar_mthly_bill.rcvd_amt, gf_ar_mthly_bill.tax_tp, gf_ar_mthly_bill.tax_rate,
3286gf_ar_mthly_bill.tax_amt, gf_ar_mthly_bill.exn_inf, gf_ar_mthly_bill.anl_dmsn1, gf_ar_mthly_bill.anl_dmsn2, gf_ar_mthly_bill.anl_dmsn3, gf_ar_mthly_bill.anl_dmsn4,
3287gf_ar_mthly_bill.wrtof_dtl_cnt, gf_ar_mthly_bill.to_wrtof_dtl_cnt, gf_ar_mthly_bill.rcrd_id, gf_ar_mthly_bill.last_moder, gf_ar_mthly_bill.gmt_create,
3288gf_ar_mthly_bill.gmt_modified, gf_ar_mthly_bill.charge_tp, gf_ar_mthly_bill.stl_ip_role_id, gf_ar_mthly_bill.svc_amt, gf_ar_mthly_bill.inved_amt, gf_ar_mthly_bill.chk_st,
3289gf_ar_mthly_bill.acnt_day, gf_ar_mthly_bill.inv_amt, gf_ar_mthly_bill.rel_inv_amt, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.payer_ip_role_id, gf_ar_mthly_bill.sgn_ip_id,
3290gf_ar_mthly_bill.sgn_ip_role_id, gf_ar_mthly_bill.chking_amt, gf_ar_mthly_bill.frz_amt, gf_ar_mthly_bill.chked_amt, gf_ar_mthly_bill.writingoff_amt, gf_ar_mthly_bill.svc_bill_amt,
3291gf_ar_mthly_bill.svc_ccy, gf_ar_mthly_bill.env_source, gf_ar_mthly_bill.metadata_source, gf_ar_mthly_bill.setl_time_zone, gf_ar_mthly_bill.actg_time_zone,
3292gf_ar_mthly_bill.inter_trade_flag, gf_ar_mthly_bill.actg_bill_mth, gf_ar_mthly_bill.auto_writeoff_group_no, column_conv(VARCHAR,utf8mb4_bin,length:4,NULL,
3293substr(gf_ar_mthly_bill.bill_no, 23, 2)))]), filter(nil), rowset=16
32941 - output([INTERNAL_FUNCTION(gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.bill_no, gf_ar_mthly_bill.ip_id, gf_ar_mthly_bill.ip_role_id, gf_ar_mthly_bill.inst_id,
3295gf_ar_mthly_bill.pd_code, gf_ar_mthly_bill.ar_no, gf_ar_mthly_bill.bill_tp, gf_ar_mthly_bill.setl_tp, gf_ar_mthly_bill.bill_st, gf_ar_mthly_bill.bill_strt_dt,
3296gf_ar_mthly_bill.bill_end_dt, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.acrd_dt, gf_ar_mthly_bill.gmt_pay, gf_ar_mthly_bill.payee_ac, gf_ar_mthly_bill.payer_ac,
3297gf_ar_mthly_bill.pay_way, gf_ar_mthly_bill.pay_orig, gf_ar_mthly_bill.clcn_bsc_amt, gf_ar_mthly_bill.clcn_bsc_tp, gf_ar_mthly_bill.clcn_mthd, gf_ar_mthly_bill.chrg_itm_code,
3298gf_ar_mthly_bill.ccy, gf_ar_mthly_bill.bill_amt, gf_ar_mthly_bill.adj_amt, gf_ar_mthly_bill.rcvd_amt, gf_ar_mthly_bill.tax_tp, gf_ar_mthly_bill.tax_rate,
3299gf_ar_mthly_bill.tax_amt, gf_ar_mthly_bill.exn_inf, gf_ar_mthly_bill.anl_dmsn1, gf_ar_mthly_bill.anl_dmsn2, gf_ar_mthly_bill.anl_dmsn3, gf_ar_mthly_bill.anl_dmsn4,
3300gf_ar_mthly_bill.wrtof_dtl_cnt, gf_ar_mthly_bill.to_wrtof_dtl_cnt, gf_ar_mthly_bill.rcrd_id, gf_ar_mthly_bill.last_moder, gf_ar_mthly_bill.gmt_create,
3301gf_ar_mthly_bill.gmt_modified, gf_ar_mthly_bill.charge_tp, gf_ar_mthly_bill.stl_ip_role_id, gf_ar_mthly_bill.svc_amt, gf_ar_mthly_bill.inved_amt, gf_ar_mthly_bill.chk_st,
3302gf_ar_mthly_bill.acnt_day, gf_ar_mthly_bill.inv_amt, gf_ar_mthly_bill.rel_inv_amt, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.payer_ip_role_id, gf_ar_mthly_bill.sgn_ip_id,
3303gf_ar_mthly_bill.sgn_ip_role_id, gf_ar_mthly_bill.chking_amt, gf_ar_mthly_bill.frz_amt, gf_ar_mthly_bill.chked_amt, gf_ar_mthly_bill.writingoff_amt, gf_ar_mthly_bill.svc_bill_amt,
3304gf_ar_mthly_bill.svc_ccy, gf_ar_mthly_bill.env_source, gf_ar_mthly_bill.metadata_source, gf_ar_mthly_bill.setl_time_zone, gf_ar_mthly_bill.actg_time_zone,
3305gf_ar_mthly_bill.inter_trade_flag, gf_ar_mthly_bill.actg_bill_mth, gf_ar_mthly_bill.auto_writeoff_group_no, column_conv(VARCHAR,utf8mb4_bin,length:4,NULL,
3306substr(gf_ar_mthly_bill.bill_no, 23, 2)))]), filter(nil), rowset=16
3307dop=1
33082 - output([gf_ar_mthly_bill.tnt_inst_id], [gf_ar_mthly_bill.bill_no], [column_conv(VARCHAR,utf8mb4_bin,length:4,NULL,substr(gf_ar_mthly_bill.bill_no,
330923, 2))], [gf_ar_mthly_bill.ip_id], [gf_ar_mthly_bill.ip_role_id], [gf_ar_mthly_bill.inst_id], [gf_ar_mthly_bill.pd_code], [gf_ar_mthly_bill.ar_no], [gf_ar_mthly_bill.bill_tp],
3310[gf_ar_mthly_bill.setl_tp], [gf_ar_mthly_bill.bill_st], [gf_ar_mthly_bill.bill_strt_dt], [gf_ar_mthly_bill.bill_end_dt], [gf_ar_mthly_bill.bill_mth], [gf_ar_mthly_bill.acrd_dt],
3311[gf_ar_mthly_bill.gmt_pay], [gf_ar_mthly_bill.payee_ac], [gf_ar_mthly_bill.payer_ac], [gf_ar_mthly_bill.pay_way], [gf_ar_mthly_bill.pay_orig], [gf_ar_mthly_bill.clcn_bsc_amt],
3312[gf_ar_mthly_bill.clcn_bsc_tp], [gf_ar_mthly_bill.clcn_mthd], [gf_ar_mthly_bill.chrg_itm_code], [gf_ar_mthly_bill.ccy], [gf_ar_mthly_bill.bill_amt], [gf_ar_mthly_bill.adj_amt],
3313[gf_ar_mthly_bill.rcvd_amt], [gf_ar_mthly_bill.tax_tp], [gf_ar_mthly_bill.tax_rate], [gf_ar_mthly_bill.tax_amt], [gf_ar_mthly_bill.exn_inf], [gf_ar_mthly_bill.anl_dmsn1],
3314[gf_ar_mthly_bill.anl_dmsn2], [gf_ar_mthly_bill.anl_dmsn3], [gf_ar_mthly_bill.anl_dmsn4], [gf_ar_mthly_bill.wrtof_dtl_cnt], [gf_ar_mthly_bill.to_wrtof_dtl_cnt],
3315[gf_ar_mthly_bill.rcrd_id], [gf_ar_mthly_bill.last_moder], [gf_ar_mthly_bill.gmt_create], [gf_ar_mthly_bill.gmt_modified], [gf_ar_mthly_bill.charge_tp],
3316[gf_ar_mthly_bill.stl_ip_role_id], [gf_ar_mthly_bill.svc_amt], [gf_ar_mthly_bill.inved_amt], [gf_ar_mthly_bill.chk_st], [gf_ar_mthly_bill.acnt_day], [gf_ar_mthly_bill.inv_amt],
3317[gf_ar_mthly_bill.rel_inv_amt], [gf_ar_mthly_bill.tp], [gf_ar_mthly_bill.payer_ip_role_id], [gf_ar_mthly_bill.sgn_ip_id], [gf_ar_mthly_bill.sgn_ip_role_id],
3318[gf_ar_mthly_bill.chking_amt], [gf_ar_mthly_bill.frz_amt], [gf_ar_mthly_bill.chked_amt], [gf_ar_mthly_bill.writingoff_amt], [gf_ar_mthly_bill.svc_bill_amt],
3319[gf_ar_mthly_bill.svc_ccy], [gf_ar_mthly_bill.env_source], [gf_ar_mthly_bill.metadata_source], [gf_ar_mthly_bill.setl_time_zone], [gf_ar_mthly_bill.actg_time_zone],
3320[gf_ar_mthly_bill.inter_trade_flag], [gf_ar_mthly_bill.actg_bill_mth], [gf_ar_mthly_bill.auto_writeoff_group_no]), filter(nil), rowset=16
3321force partition granule
33223 - output([gf_ar_mthly_bill.tnt_inst_id], [gf_ar_mthly_bill.bill_no], [column_conv(VARCHAR,utf8mb4_bin,length:4,NULL,substr(gf_ar_mthly_bill.bill_no,
332323, 2))], [gf_ar_mthly_bill.ip_id], [gf_ar_mthly_bill.ip_role_id], [gf_ar_mthly_bill.inst_id], [gf_ar_mthly_bill.pd_code], [gf_ar_mthly_bill.ar_no], [gf_ar_mthly_bill.bill_tp],
3324[gf_ar_mthly_bill.setl_tp], [gf_ar_mthly_bill.bill_st], [gf_ar_mthly_bill.bill_strt_dt], [gf_ar_mthly_bill.bill_end_dt], [gf_ar_mthly_bill.bill_mth], [gf_ar_mthly_bill.acrd_dt],
3325[gf_ar_mthly_bill.gmt_pay], [gf_ar_mthly_bill.payee_ac], [gf_ar_mthly_bill.payer_ac], [gf_ar_mthly_bill.pay_way], [gf_ar_mthly_bill.pay_orig], [gf_ar_mthly_bill.clcn_bsc_amt],
3326[gf_ar_mthly_bill.clcn_bsc_tp], [gf_ar_mthly_bill.clcn_mthd], [gf_ar_mthly_bill.chrg_itm_code], [gf_ar_mthly_bill.ccy], [gf_ar_mthly_bill.bill_amt], [gf_ar_mthly_bill.adj_amt],
3327[gf_ar_mthly_bill.rcvd_amt], [gf_ar_mthly_bill.tax_tp], [gf_ar_mthly_bill.tax_rate], [gf_ar_mthly_bill.tax_amt], [gf_ar_mthly_bill.exn_inf], [gf_ar_mthly_bill.anl_dmsn1],
3328[gf_ar_mthly_bill.anl_dmsn2], [gf_ar_mthly_bill.anl_dmsn3], [gf_ar_mthly_bill.anl_dmsn4], [gf_ar_mthly_bill.wrtof_dtl_cnt], [gf_ar_mthly_bill.to_wrtof_dtl_cnt],
3329[gf_ar_mthly_bill.rcrd_id], [gf_ar_mthly_bill.last_moder], [gf_ar_mthly_bill.gmt_create], [gf_ar_mthly_bill.gmt_modified], [gf_ar_mthly_bill.charge_tp],
3330[gf_ar_mthly_bill.stl_ip_role_id], [gf_ar_mthly_bill.svc_amt], [gf_ar_mthly_bill.inved_amt], [gf_ar_mthly_bill.chk_st], [gf_ar_mthly_bill.acnt_day], [gf_ar_mthly_bill.inv_amt],
3331[gf_ar_mthly_bill.rel_inv_amt], [gf_ar_mthly_bill.tp], [gf_ar_mthly_bill.payer_ip_role_id], [gf_ar_mthly_bill.sgn_ip_id], [gf_ar_mthly_bill.sgn_ip_role_id],
3332[gf_ar_mthly_bill.chking_amt], [gf_ar_mthly_bill.frz_amt], [gf_ar_mthly_bill.chked_amt], [gf_ar_mthly_bill.writingoff_amt], [gf_ar_mthly_bill.svc_bill_amt],
3333[gf_ar_mthly_bill.svc_ccy], [gf_ar_mthly_bill.env_source], [gf_ar_mthly_bill.metadata_source], [gf_ar_mthly_bill.setl_time_zone], [gf_ar_mthly_bill.actg_time_zone],
3334[gf_ar_mthly_bill.inter_trade_flag], [gf_ar_mthly_bill.actg_bill_mth], [gf_ar_mthly_bill.auto_writeoff_group_no]), filter(nil), rowset=16
3335access([gf_ar_mthly_bill.tnt_inst_id], [gf_ar_mthly_bill.bill_no], [gf_ar_mthly_bill.ip_id], [gf_ar_mthly_bill.ip_role_id], [gf_ar_mthly_bill.inst_id],
3336[gf_ar_mthly_bill.pd_code], [gf_ar_mthly_bill.ar_no], [gf_ar_mthly_bill.bill_tp], [gf_ar_mthly_bill.setl_tp], [gf_ar_mthly_bill.bill_st], [gf_ar_mthly_bill.bill_strt_dt],
3337[gf_ar_mthly_bill.bill_end_dt], [gf_ar_mthly_bill.bill_mth], [gf_ar_mthly_bill.acrd_dt], [gf_ar_mthly_bill.gmt_pay], [gf_ar_mthly_bill.payee_ac], [gf_ar_mthly_bill.payer_ac],
3338[gf_ar_mthly_bill.pay_way], [gf_ar_mthly_bill.pay_orig], [gf_ar_mthly_bill.clcn_bsc_amt], [gf_ar_mthly_bill.clcn_bsc_tp], [gf_ar_mthly_bill.clcn_mthd],
3339[gf_ar_mthly_bill.chrg_itm_code], [gf_ar_mthly_bill.ccy], [gf_ar_mthly_bill.bill_amt], [gf_ar_mthly_bill.adj_amt], [gf_ar_mthly_bill.rcvd_amt], [gf_ar_mthly_bill.tax_tp],
3340[gf_ar_mthly_bill.tax_rate], [gf_ar_mthly_bill.tax_amt], [gf_ar_mthly_bill.exn_inf], [gf_ar_mthly_bill.anl_dmsn1], [gf_ar_mthly_bill.anl_dmsn2], [gf_ar_mthly_bill.anl_dmsn3],
3341[gf_ar_mthly_bill.anl_dmsn4], [gf_ar_mthly_bill.wrtof_dtl_cnt], [gf_ar_mthly_bill.to_wrtof_dtl_cnt], [gf_ar_mthly_bill.rcrd_id], [gf_ar_mthly_bill.last_moder],
3342[gf_ar_mthly_bill.gmt_create], [gf_ar_mthly_bill.gmt_modified], [gf_ar_mthly_bill.charge_tp], [gf_ar_mthly_bill.stl_ip_role_id], [gf_ar_mthly_bill.svc_amt],
3343[gf_ar_mthly_bill.inved_amt], [gf_ar_mthly_bill.chk_st], [gf_ar_mthly_bill.acnt_day], [gf_ar_mthly_bill.inv_amt], [gf_ar_mthly_bill.rel_inv_amt], [gf_ar_mthly_bill.tp],
3344[gf_ar_mthly_bill.payer_ip_role_id], [gf_ar_mthly_bill.sgn_ip_id], [gf_ar_mthly_bill.sgn_ip_role_id], [gf_ar_mthly_bill.chking_amt], [gf_ar_mthly_bill.frz_amt],
3345[gf_ar_mthly_bill.chked_amt], [gf_ar_mthly_bill.writingoff_amt], [gf_ar_mthly_bill.svc_bill_amt], [gf_ar_mthly_bill.svc_ccy], [gf_ar_mthly_bill.env_source],
3346[gf_ar_mthly_bill.metadata_source], [gf_ar_mthly_bill.setl_time_zone], [gf_ar_mthly_bill.actg_time_zone], [gf_ar_mthly_bill.inter_trade_flag], [gf_ar_mthly_bill.actg_bill_mth],
3347[gf_ar_mthly_bill.auto_writeoff_group_no]), partitions(p[0-8])
3348is_index_back=false, is_global_index=false,
3349range_key([gf_ar_mthly_bill.tnt_inst_id], [gf_ar_mthly_bill.bill_no]), range(MIN,MIN ; MAX,MAX)always true
3350select * from gf_ar_mthly_bill;
3351+-------------+------------------------------------+-------+------------+---------+---------+-------+---------+---------+---------+--------------+-------------+----------+---------+----------------------------+----------+----------+---------+----------+--------------+-------------+-----------+---------------+-----+----------+---------+----------+--------+------------+---------+---------+-----------+-----------+-----------+-----------+---------------+------------------+---------+------------+----------------------------+----------------------------+-----------+----------------+---------+-----------+--------+----------+---------+-------------+------+------------------+-----------+----------------+------------+---------+-----------+----------------+--------------+---------+------------+-----------------+----------------+----------------+------------------+---------------+------------------------+--------------+
3352| tnt_inst_id | bill_no | ip_id | ip_role_id | inst_id | pd_code | ar_no | bill_tp | setl_tp | bill_st | bill_strt_dt | bill_end_dt | bill_mth | acrd_dt | gmt_pay | payee_ac | payer_ac | pay_way | pay_orig | clcn_bsc_amt | clcn_bsc_tp | clcn_mthd | chrg_itm_code | ccy | bill_amt | adj_amt | rcvd_amt | tax_tp | tax_rate | tax_amt | exn_inf | anl_dmsn1 | anl_dmsn2 | anl_dmsn3 | anl_dmsn4 | wrtof_dtl_cnt | to_wrtof_dtl_cnt | rcrd_id | last_moder | gmt_create | gmt_modified | charge_tp | stl_ip_role_id | svc_amt | inved_amt | chk_st | acnt_day | inv_amt | rel_inv_amt | tp | payer_ip_role_id | sgn_ip_id | sgn_ip_role_id | chking_amt | frz_amt | chked_amt | writingoff_amt | svc_bill_amt | svc_ccy | env_source | metadata_source | setl_time_zone | actg_time_zone | inter_trade_flag | actg_bill_mth | auto_writeoff_group_no | partition_id |
3353+-------------+------------------------------------+-------+------------+---------+---------+-------+---------+---------+---------+--------------+-------------+----------+---------+----------------------------+----------+----------+---------+----------+--------------+-------------+-----------+---------------+-----+----------+---------+----------+--------+------------+---------+---------+-----------+-----------+-----------+-----------+---------------+------------------+---------+------------+----------------------------+----------------------------+-----------+----------------+---------+-----------+--------+----------+---------+-------------+------+------------------+-----------+----------------+------------+---------+-----------+----------------+--------------+---------+------------+-----------------+----------------+----------------+------------------+---------------+------------------------+--------------+
3354| ylctest | 2018090310122000040400820033834415 | 1 | 1 | 1 | NULL | NULL | 1 | 1 | 01 | 1 | 1 | 1 | NULL | 2021-05-17 12:09:35.000000 | NULL | NULL | NULL | NULL | 123.1200 | NULL | NULL | NULL | 1 | 1 | 4 | 2 | 1 | 1.00000000 | 3 | 123456 | 123456 | 234567 | 345678 | 456789 | 9 | 8 | 1 | ylc | 2021-05-17 12:09:34.000000 | 2021-05-17 12:09:34.000000 | NULL | NULL | 5 | NULL | 06 | NULL | 6 | NULL | NULL | NULL | NULL | NULL | 10 | 12 | 11 | 7 | 13 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 82 |
3355+-------------+------------------------------------+-------+------------+---------+---------+-------+---------+---------+---------+--------------+-------------+----------+---------+----------------------------+----------+----------+---------+----------+--------------+-------------+-----------+---------------+-----+----------+---------+----------+--------+------------+---------+---------+-----------+-----------+-----------+-----------+---------------+------------------+---------+------------+----------------------------+----------------------------+-----------+----------------+---------+-----------+--------+----------+---------+-------------+------+------------------+-----------+----------------+------------+---------+-----------+----------------+--------------+---------+------------+-----------------+----------------+----------------+------------------+---------------+------------------------+--------------+
3356rollback;
3357set binlog_row_image='MINIMAL';
3358EXPLAIN BASIC update gf_ar_mthly_bill
3359set bill_st='01',
3360gmt_pay='2021-05-17 12:09:35',
3361clcn_bsc_amt='123.12',
3362bill_amt=1,
3363rcvd_amt=2,
3364tax_amt=3,
3365exn_inf='123456',
3366anl_dmsn1='123456',
3367anl_dmsn2='234567',
3368anl_dmsn3='345678',
3369anl_dmsn4='456789',
3370last_moder='ylc',
3371adj_amt=4,
3372svc_amt = 5,
3373chk_st = '06',
3374inv_amt = 6,
3375writingoff_amt = 7,
3376wrtof_dtl_cnt = 9 ,
3377to_wrtof_dtl_cnt = 8,
3378chking_amt=10,
3379chked_amt=11,
3380frz_amt=12,
3381svc_bill_amt=13,
3382gmt_modified='2021-05-17 12:09:34'
3383where
3384tnt_inst_id='ylctest' and bill_no='2018090310122000040400820033834415';
3385Query Plan
3386========================================
3387|ID|OPERATOR |NAME |
3388----------------------------------------
3389|0 |DISTRIBUTED UPDATE| |
3390|1 |└─TABLE GET |gf_ar_mthly_bill|
3391========================================
3392Outputs & filters:
3393-------------------------------------
33940 - output(nil), filter(nil)
3395table_columns([{gf_ar_mthly_bill: ({gf_ar_mthly_bill: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.bill_no, gf_ar_mthly_bill.ip_id, gf_ar_mthly_bill.ip_role_id,
3396gf_ar_mthly_bill.inst_id, gf_ar_mthly_bill.pd_code, gf_ar_mthly_bill.ar_no, gf_ar_mthly_bill.bill_tp, gf_ar_mthly_bill.setl_tp, gf_ar_mthly_bill.bill_st,
3397gf_ar_mthly_bill.bill_strt_dt, gf_ar_mthly_bill.bill_end_dt, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.acrd_dt, gf_ar_mthly_bill.gmt_pay, gf_ar_mthly_bill.payee_ac,
3398gf_ar_mthly_bill.payer_ac, gf_ar_mthly_bill.pay_way, gf_ar_mthly_bill.pay_orig, gf_ar_mthly_bill.clcn_bsc_amt, gf_ar_mthly_bill.clcn_bsc_tp, gf_ar_mthly_bill.clcn_mthd,
3399gf_ar_mthly_bill.chrg_itm_code, gf_ar_mthly_bill.ccy, gf_ar_mthly_bill.bill_amt, gf_ar_mthly_bill.adj_amt, gf_ar_mthly_bill.rcvd_amt, gf_ar_mthly_bill.tax_tp,
3400gf_ar_mthly_bill.tax_rate, gf_ar_mthly_bill.tax_amt, gf_ar_mthly_bill.exn_inf, gf_ar_mthly_bill.anl_dmsn1, gf_ar_mthly_bill.anl_dmsn2, gf_ar_mthly_bill.anl_dmsn3,
3401gf_ar_mthly_bill.anl_dmsn4, gf_ar_mthly_bill.wrtof_dtl_cnt, gf_ar_mthly_bill.to_wrtof_dtl_cnt, gf_ar_mthly_bill.rcrd_id, gf_ar_mthly_bill.last_moder, gf_ar_mthly_bill.gmt_create,
3402gf_ar_mthly_bill.gmt_modified, gf_ar_mthly_bill.charge_tp, gf_ar_mthly_bill.stl_ip_role_id, gf_ar_mthly_bill.svc_amt, gf_ar_mthly_bill.inved_amt, gf_ar_mthly_bill.chk_st,
3403gf_ar_mthly_bill.acnt_day, gf_ar_mthly_bill.inv_amt, gf_ar_mthly_bill.rel_inv_amt, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.payer_ip_role_id, gf_ar_mthly_bill.sgn_ip_id,
3404gf_ar_mthly_bill.sgn_ip_role_id, gf_ar_mthly_bill.chking_amt, gf_ar_mthly_bill.frz_amt, gf_ar_mthly_bill.chked_amt, gf_ar_mthly_bill.writingoff_amt, gf_ar_mthly_bill.svc_bill_amt,
3405gf_ar_mthly_bill.svc_ccy, gf_ar_mthly_bill.env_source, gf_ar_mthly_bill.metadata_source, gf_ar_mthly_bill.setl_time_zone, gf_ar_mthly_bill.actg_time_zone,
3406gf_ar_mthly_bill.inter_trade_flag, gf_ar_mthly_bill.actg_bill_mth, gf_ar_mthly_bill.auto_writeoff_group_no, gf_ar_mthly_bill.partition_id)}, {idx_tnt_inst_id_acnt_day_chk_st_gmt_create:
3407(gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.acnt_day, gf_ar_mthly_bill.chk_st, gf_ar_mthly_bill.gmt_create, gf_ar_mthly_bill.bill_no)}, {idx_tnt_inst_id_acnt_day_chk_st:
3408(gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.acnt_day, gf_ar_mthly_bill.chk_st, gf_ar_mthly_bill.bill_no)}, {idx_tnt_inst_id_setl_tp_bill_st: (gf_ar_mthly_bill.tnt_inst_id,
3409gf_ar_mthly_bill.setl_tp, gf_ar_mthly_bill.bill_st, gf_ar_mthly_bill.bill_no)}, {idx_acrd_dt_setl_tp_bill_st: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.acrd_dt,
3410gf_ar_mthly_bill.setl_tp, gf_ar_mthly_bill.bill_st, gf_ar_mthly_bill.bill_no)}, {idx_policy_id_bill_mth_inst_id_type: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.inst_id,
3411gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.anl_dmsn2, gf_ar_mthly_bill.bill_no)}, {idx_tnt_inst_id_inst_id_tp_anl_dmsn_1_bill_mth:
3412(gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.inst_id, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.anl_dmsn1, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.bill_no)},
3413{idx_tnt_inst_id_inst_id_tp_anl_dmsn_3_bill_mth: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.inst_id, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.anl_dmsn3,
3414gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.bill_no)}, {idx_tnt_inst_id_inst_id_tp_anl_dmsn_4_bill_mth: (gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.inst_id,
3415gf_ar_mthly_bill.tp, gf_ar_mthly_bill.anl_dmsn4, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.bill_no)}, {idx_tnt_inst_id_inst_id_tp_anl_dmsn_2_bill_mth:
3416(gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.inst_id, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.anl_dmsn2, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.bill_no)})}]),
3417
3418update([gf_ar_mthly_bill.bill_st=column_conv(VARCHAR,utf8mb4_bin,length:2,NOT NULL,cast('01', VARCHAR(1048576)))], [gf_ar_mthly_bill.gmt_pay=column_conv(TIMESTAMP,
3419PS:(25,6),NULL,cast('2021-05-17 12:09:35', TIMESTAMP(-1, -1)))], [gf_ar_mthly_bill.clcn_bsc_amt=column_conv(DECIMAL_INT,PS:(25,4),NULL,cast('123.12', DECIMAL_INT(25,
34204)))], [gf_ar_mthly_bill.bill_amt=column_conv(BIGINT,PS:(20,0),NOT NULL,1)], [gf_ar_mthly_bill.rcvd_amt=column_conv(BIGINT,PS:(20,0),NOT NULL,2)], [gf_ar_mthly_bill.tax_amt=column_conv(BIGINT,
3421PS:(20,0),NOT NULL,3)], [gf_ar_mthly_bill.exn_inf=column_conv(VARCHAR,utf8mb4_bin,length:4000,NULL,cast('123456', VARCHAR(1048576)))], [gf_ar_mthly_bill.anl_dmsn1=column_conv(VARCHAR,
3422utf8mb4_bin,length:1000,NULL,cast('123456', VARCHAR(1048576)))], [gf_ar_mthly_bill.anl_dmsn2=column_conv(VARCHAR,utf8mb4_bin,length:1000,NULL,cast('234567',
3423VARCHAR(1048576)))], [gf_ar_mthly_bill.anl_dmsn3=column_conv(VARCHAR,utf8mb4_bin,length:1000,NULL,cast('345678', VARCHAR(1048576)))], [gf_ar_mthly_bill.anl_dmsn4=column_conv(VARCHAR,
3424utf8mb4_bin,length:1000,NULL,cast('456789', VARCHAR(1048576)))], [gf_ar_mthly_bill.last_moder=column_conv(VARCHAR,utf8mb4_bin,length:32,NOT NULL,cast('ylc',
3425VARCHAR(1048576)))], [gf_ar_mthly_bill.adj_amt=column_conv(BIGINT,PS:(20,0),NOT NULL,4)], [gf_ar_mthly_bill.svc_amt=column_conv(BIGINT,PS:(20,0),NULL,5)],
3426[gf_ar_mthly_bill.chk_st=column_conv(VARCHAR,utf8mb4_bin,length:2,NULL,cast('06', VARCHAR(1048576)))], [gf_ar_mthly_bill.inv_amt=column_conv(BIGINT,PS:(20,
34270),NULL,6)], [gf_ar_mthly_bill.writingoff_amt=column_conv(BIGINT,PS:(20,0),NULL,7)], [gf_ar_mthly_bill.wrtof_dtl_cnt=column_conv(BIGINT,PS:(20,0),NULL,9)],
3428[gf_ar_mthly_bill.to_wrtof_dtl_cnt=column_conv(BIGINT,PS:(20,0),NULL,8)], [gf_ar_mthly_bill.chking_amt=column_conv(BIGINT,PS:(20,0),NULL,10)], [gf_ar_mthly_bill.chked_amt=column_conv(BIGINT,
3429PS:(20,0),NULL,11)], [gf_ar_mthly_bill.frz_amt=column_conv(BIGINT,PS:(20,0),NULL,12)], [gf_ar_mthly_bill.svc_bill_amt=column_conv(BIGINT,PS:(20,0),NULL,
343013)], [gf_ar_mthly_bill.gmt_modified=column_conv(TIMESTAMP,PS:(25,6),NOT NULL,timestamp_nvl(cast('2021-05-17 12:09:34', TIMESTAMP(-1, -1)), cast(current_timestamp(),
3431TIMESTAMP(25, 6))))])
34321 - output([gf_ar_mthly_bill.tnt_inst_id], [gf_ar_mthly_bill.bill_no], [column_conv(VARCHAR,utf8mb4_bin,length:4,NULL,substr(gf_ar_mthly_bill.bill_no,
343323, 2))], [gf_ar_mthly_bill.bill_st], [gf_ar_mthly_bill.gmt_pay], [gf_ar_mthly_bill.clcn_bsc_amt], [gf_ar_mthly_bill.bill_amt], [gf_ar_mthly_bill.rcvd_amt],
3434[gf_ar_mthly_bill.tax_amt], [gf_ar_mthly_bill.exn_inf], [gf_ar_mthly_bill.anl_dmsn1], [gf_ar_mthly_bill.anl_dmsn2], [gf_ar_mthly_bill.anl_dmsn3], [gf_ar_mthly_bill.anl_dmsn4],
3435[gf_ar_mthly_bill.last_moder], [gf_ar_mthly_bill.adj_amt], [gf_ar_mthly_bill.svc_amt], [gf_ar_mthly_bill.chk_st], [gf_ar_mthly_bill.inv_amt], [gf_ar_mthly_bill.writingoff_amt],
3436[gf_ar_mthly_bill.wrtof_dtl_cnt], [gf_ar_mthly_bill.to_wrtof_dtl_cnt], [gf_ar_mthly_bill.chking_amt], [gf_ar_mthly_bill.chked_amt], [gf_ar_mthly_bill.frz_amt],
3437[gf_ar_mthly_bill.svc_bill_amt], [gf_ar_mthly_bill.gmt_modified], [gf_ar_mthly_bill.ip_id], [gf_ar_mthly_bill.ip_role_id], [gf_ar_mthly_bill.inst_id],
3438[gf_ar_mthly_bill.pd_code], [gf_ar_mthly_bill.ar_no], [gf_ar_mthly_bill.bill_tp], [gf_ar_mthly_bill.setl_tp], [gf_ar_mthly_bill.bill_strt_dt], [gf_ar_mthly_bill.bill_end_dt],
3439[gf_ar_mthly_bill.bill_mth], [gf_ar_mthly_bill.acrd_dt], [gf_ar_mthly_bill.payee_ac], [gf_ar_mthly_bill.payer_ac], [gf_ar_mthly_bill.pay_way], [gf_ar_mthly_bill.pay_orig],
3440[gf_ar_mthly_bill.clcn_bsc_tp], [gf_ar_mthly_bill.clcn_mthd], [gf_ar_mthly_bill.chrg_itm_code], [gf_ar_mthly_bill.ccy], [gf_ar_mthly_bill.tax_tp], [gf_ar_mthly_bill.tax_rate],
3441[gf_ar_mthly_bill.rcrd_id], [gf_ar_mthly_bill.gmt_create], [gf_ar_mthly_bill.charge_tp], [gf_ar_mthly_bill.stl_ip_role_id], [gf_ar_mthly_bill.inved_amt],
3442[gf_ar_mthly_bill.acnt_day], [gf_ar_mthly_bill.rel_inv_amt], [gf_ar_mthly_bill.tp], [gf_ar_mthly_bill.payer_ip_role_id], [gf_ar_mthly_bill.sgn_ip_id],
3443[gf_ar_mthly_bill.sgn_ip_role_id], [gf_ar_mthly_bill.svc_ccy], [gf_ar_mthly_bill.env_source], [gf_ar_mthly_bill.metadata_source], [gf_ar_mthly_bill.setl_time_zone],
3444[gf_ar_mthly_bill.actg_time_zone], [gf_ar_mthly_bill.inter_trade_flag], [gf_ar_mthly_bill.actg_bill_mth], [gf_ar_mthly_bill.auto_writeoff_group_no]), filter(nil), rowset=16
3445access([gf_ar_mthly_bill.tnt_inst_id], [gf_ar_mthly_bill.bill_no], [gf_ar_mthly_bill.bill_st], [gf_ar_mthly_bill.gmt_pay], [gf_ar_mthly_bill.clcn_bsc_amt],
3446[gf_ar_mthly_bill.bill_amt], [gf_ar_mthly_bill.rcvd_amt], [gf_ar_mthly_bill.tax_amt], [gf_ar_mthly_bill.exn_inf], [gf_ar_mthly_bill.anl_dmsn1], [gf_ar_mthly_bill.anl_dmsn2],
3447[gf_ar_mthly_bill.anl_dmsn3], [gf_ar_mthly_bill.anl_dmsn4], [gf_ar_mthly_bill.last_moder], [gf_ar_mthly_bill.adj_amt], [gf_ar_mthly_bill.svc_amt], [gf_ar_mthly_bill.chk_st],
3448[gf_ar_mthly_bill.inv_amt], [gf_ar_mthly_bill.writingoff_amt], [gf_ar_mthly_bill.wrtof_dtl_cnt], [gf_ar_mthly_bill.to_wrtof_dtl_cnt], [gf_ar_mthly_bill.chking_amt],
3449[gf_ar_mthly_bill.chked_amt], [gf_ar_mthly_bill.frz_amt], [gf_ar_mthly_bill.svc_bill_amt], [gf_ar_mthly_bill.gmt_modified], [gf_ar_mthly_bill.ip_id], [gf_ar_mthly_bill.ip_role_id],
3450[gf_ar_mthly_bill.inst_id], [gf_ar_mthly_bill.pd_code], [gf_ar_mthly_bill.ar_no], [gf_ar_mthly_bill.bill_tp], [gf_ar_mthly_bill.setl_tp], [gf_ar_mthly_bill.bill_strt_dt],
3451[gf_ar_mthly_bill.bill_end_dt], [gf_ar_mthly_bill.bill_mth], [gf_ar_mthly_bill.acrd_dt], [gf_ar_mthly_bill.payee_ac], [gf_ar_mthly_bill.payer_ac], [gf_ar_mthly_bill.pay_way],
3452[gf_ar_mthly_bill.pay_orig], [gf_ar_mthly_bill.clcn_bsc_tp], [gf_ar_mthly_bill.clcn_mthd], [gf_ar_mthly_bill.chrg_itm_code], [gf_ar_mthly_bill.ccy], [gf_ar_mthly_bill.tax_tp],
3453[gf_ar_mthly_bill.tax_rate], [gf_ar_mthly_bill.rcrd_id], [gf_ar_mthly_bill.gmt_create], [gf_ar_mthly_bill.charge_tp], [gf_ar_mthly_bill.stl_ip_role_id],
3454[gf_ar_mthly_bill.inved_amt], [gf_ar_mthly_bill.acnt_day], [gf_ar_mthly_bill.rel_inv_amt], [gf_ar_mthly_bill.tp], [gf_ar_mthly_bill.payer_ip_role_id],
3455[gf_ar_mthly_bill.sgn_ip_id], [gf_ar_mthly_bill.sgn_ip_role_id], [gf_ar_mthly_bill.svc_ccy], [gf_ar_mthly_bill.env_source], [gf_ar_mthly_bill.metadata_source],
3456[gf_ar_mthly_bill.setl_time_zone], [gf_ar_mthly_bill.actg_time_zone], [gf_ar_mthly_bill.inter_trade_flag], [gf_ar_mthly_bill.actg_bill_mth], [gf_ar_mthly_bill.auto_writeoff_group_no]), partitions(p3)
3457is_index_back=false, is_global_index=false,
3458range_key([gf_ar_mthly_bill.tnt_inst_id], [gf_ar_mthly_bill.bill_no]), range[ylctest,2018090310122000040400820033834415 ; ylctest,2018090310122000040400820033834415],
3459
3460range_cond([gf_ar_mthly_bill.tnt_inst_id = cast('ylctest', VARCHAR(1048576))], [gf_ar_mthly_bill.bill_no = cast('2018090310122000040400820033834415',
3461VARCHAR(1048576))])
3462update gf_ar_mthly_bill
3463set bill_st='01',
3464gmt_pay='2021-05-17 12:09:35',
3465clcn_bsc_amt='123.12',
3466bill_amt=1,
3467rcvd_amt=2,
3468tax_amt=3,
3469exn_inf='123456',
3470anl_dmsn1='123456',
3471anl_dmsn2='234567',
3472anl_dmsn3='345678',
3473anl_dmsn4='456789',
3474last_moder='ylc',
3475adj_amt=4,
3476svc_amt = 5,
3477chk_st = '06',
3478inv_amt = 6,
3479writingoff_amt = 7,
3480wrtof_dtl_cnt = 9 ,
3481to_wrtof_dtl_cnt = 8,
3482chking_amt=10,
3483chked_amt=11,
3484frz_amt=12,
3485svc_bill_amt=13,
3486gmt_modified='2021-05-17 12:09:34'
3487where
3488tnt_inst_id='ylctest' and bill_no='2018090310122000040400820033834415';
3489
3490EXPLAIN BASIC select * from gf_ar_mthly_bill;
3491Query Plan
3492===============================================
3493|ID|OPERATOR |NAME |
3494-----------------------------------------------
3495|0 |PX COORDINATOR | |
3496|1 |└─EXCHANGE OUT DISTR |:EX10000 |
3497|2 | └─PX PARTITION ITERATOR| |
3498|3 | └─TABLE FULL SCAN |gf_ar_mthly_bill|
3499===============================================
3500Outputs & filters:
3501-------------------------------------
35020 - output([INTERNAL_FUNCTION(gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.bill_no, gf_ar_mthly_bill.ip_id, gf_ar_mthly_bill.ip_role_id, gf_ar_mthly_bill.inst_id,
3503gf_ar_mthly_bill.pd_code, gf_ar_mthly_bill.ar_no, gf_ar_mthly_bill.bill_tp, gf_ar_mthly_bill.setl_tp, gf_ar_mthly_bill.bill_st, gf_ar_mthly_bill.bill_strt_dt,
3504gf_ar_mthly_bill.bill_end_dt, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.acrd_dt, gf_ar_mthly_bill.gmt_pay, gf_ar_mthly_bill.payee_ac, gf_ar_mthly_bill.payer_ac,
3505gf_ar_mthly_bill.pay_way, gf_ar_mthly_bill.pay_orig, gf_ar_mthly_bill.clcn_bsc_amt, gf_ar_mthly_bill.clcn_bsc_tp, gf_ar_mthly_bill.clcn_mthd, gf_ar_mthly_bill.chrg_itm_code,
3506gf_ar_mthly_bill.ccy, gf_ar_mthly_bill.bill_amt, gf_ar_mthly_bill.adj_amt, gf_ar_mthly_bill.rcvd_amt, gf_ar_mthly_bill.tax_tp, gf_ar_mthly_bill.tax_rate,
3507gf_ar_mthly_bill.tax_amt, gf_ar_mthly_bill.exn_inf, gf_ar_mthly_bill.anl_dmsn1, gf_ar_mthly_bill.anl_dmsn2, gf_ar_mthly_bill.anl_dmsn3, gf_ar_mthly_bill.anl_dmsn4,
3508gf_ar_mthly_bill.wrtof_dtl_cnt, gf_ar_mthly_bill.to_wrtof_dtl_cnt, gf_ar_mthly_bill.rcrd_id, gf_ar_mthly_bill.last_moder, gf_ar_mthly_bill.gmt_create,
3509gf_ar_mthly_bill.gmt_modified, gf_ar_mthly_bill.charge_tp, gf_ar_mthly_bill.stl_ip_role_id, gf_ar_mthly_bill.svc_amt, gf_ar_mthly_bill.inved_amt, gf_ar_mthly_bill.chk_st,
3510gf_ar_mthly_bill.acnt_day, gf_ar_mthly_bill.inv_amt, gf_ar_mthly_bill.rel_inv_amt, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.payer_ip_role_id, gf_ar_mthly_bill.sgn_ip_id,
3511gf_ar_mthly_bill.sgn_ip_role_id, gf_ar_mthly_bill.chking_amt, gf_ar_mthly_bill.frz_amt, gf_ar_mthly_bill.chked_amt, gf_ar_mthly_bill.writingoff_amt, gf_ar_mthly_bill.svc_bill_amt,
3512gf_ar_mthly_bill.svc_ccy, gf_ar_mthly_bill.env_source, gf_ar_mthly_bill.metadata_source, gf_ar_mthly_bill.setl_time_zone, gf_ar_mthly_bill.actg_time_zone,
3513gf_ar_mthly_bill.inter_trade_flag, gf_ar_mthly_bill.actg_bill_mth, gf_ar_mthly_bill.auto_writeoff_group_no, column_conv(VARCHAR,utf8mb4_bin,length:4,NULL,
3514substr(gf_ar_mthly_bill.bill_no, 23, 2)))]), filter(nil), rowset=16
35151 - output([INTERNAL_FUNCTION(gf_ar_mthly_bill.tnt_inst_id, gf_ar_mthly_bill.bill_no, gf_ar_mthly_bill.ip_id, gf_ar_mthly_bill.ip_role_id, gf_ar_mthly_bill.inst_id,
3516gf_ar_mthly_bill.pd_code, gf_ar_mthly_bill.ar_no, gf_ar_mthly_bill.bill_tp, gf_ar_mthly_bill.setl_tp, gf_ar_mthly_bill.bill_st, gf_ar_mthly_bill.bill_strt_dt,
3517gf_ar_mthly_bill.bill_end_dt, gf_ar_mthly_bill.bill_mth, gf_ar_mthly_bill.acrd_dt, gf_ar_mthly_bill.gmt_pay, gf_ar_mthly_bill.payee_ac, gf_ar_mthly_bill.payer_ac,
3518gf_ar_mthly_bill.pay_way, gf_ar_mthly_bill.pay_orig, gf_ar_mthly_bill.clcn_bsc_amt, gf_ar_mthly_bill.clcn_bsc_tp, gf_ar_mthly_bill.clcn_mthd, gf_ar_mthly_bill.chrg_itm_code,
3519gf_ar_mthly_bill.ccy, gf_ar_mthly_bill.bill_amt, gf_ar_mthly_bill.adj_amt, gf_ar_mthly_bill.rcvd_amt, gf_ar_mthly_bill.tax_tp, gf_ar_mthly_bill.tax_rate,
3520gf_ar_mthly_bill.tax_amt, gf_ar_mthly_bill.exn_inf, gf_ar_mthly_bill.anl_dmsn1, gf_ar_mthly_bill.anl_dmsn2, gf_ar_mthly_bill.anl_dmsn3, gf_ar_mthly_bill.anl_dmsn4,
3521gf_ar_mthly_bill.wrtof_dtl_cnt, gf_ar_mthly_bill.to_wrtof_dtl_cnt, gf_ar_mthly_bill.rcrd_id, gf_ar_mthly_bill.last_moder, gf_ar_mthly_bill.gmt_create,
3522gf_ar_mthly_bill.gmt_modified, gf_ar_mthly_bill.charge_tp, gf_ar_mthly_bill.stl_ip_role_id, gf_ar_mthly_bill.svc_amt, gf_ar_mthly_bill.inved_amt, gf_ar_mthly_bill.chk_st,
3523gf_ar_mthly_bill.acnt_day, gf_ar_mthly_bill.inv_amt, gf_ar_mthly_bill.rel_inv_amt, gf_ar_mthly_bill.tp, gf_ar_mthly_bill.payer_ip_role_id, gf_ar_mthly_bill.sgn_ip_id,
3524gf_ar_mthly_bill.sgn_ip_role_id, gf_ar_mthly_bill.chking_amt, gf_ar_mthly_bill.frz_amt, gf_ar_mthly_bill.chked_amt, gf_ar_mthly_bill.writingoff_amt, gf_ar_mthly_bill.svc_bill_amt,
3525gf_ar_mthly_bill.svc_ccy, gf_ar_mthly_bill.env_source, gf_ar_mthly_bill.metadata_source, gf_ar_mthly_bill.setl_time_zone, gf_ar_mthly_bill.actg_time_zone,
3526gf_ar_mthly_bill.inter_trade_flag, gf_ar_mthly_bill.actg_bill_mth, gf_ar_mthly_bill.auto_writeoff_group_no, column_conv(VARCHAR,utf8mb4_bin,length:4,NULL,
3527substr(gf_ar_mthly_bill.bill_no, 23, 2)))]), filter(nil), rowset=16
3528dop=1
35292 - output([gf_ar_mthly_bill.tnt_inst_id], [gf_ar_mthly_bill.bill_no], [column_conv(VARCHAR,utf8mb4_bin,length:4,NULL,substr(gf_ar_mthly_bill.bill_no,
353023, 2))], [gf_ar_mthly_bill.ip_id], [gf_ar_mthly_bill.ip_role_id], [gf_ar_mthly_bill.inst_id], [gf_ar_mthly_bill.pd_code], [gf_ar_mthly_bill.ar_no], [gf_ar_mthly_bill.bill_tp],
3531[gf_ar_mthly_bill.setl_tp], [gf_ar_mthly_bill.bill_st], [gf_ar_mthly_bill.bill_strt_dt], [gf_ar_mthly_bill.bill_end_dt], [gf_ar_mthly_bill.bill_mth], [gf_ar_mthly_bill.acrd_dt],
3532[gf_ar_mthly_bill.gmt_pay], [gf_ar_mthly_bill.payee_ac], [gf_ar_mthly_bill.payer_ac], [gf_ar_mthly_bill.pay_way], [gf_ar_mthly_bill.pay_orig], [gf_ar_mthly_bill.clcn_bsc_amt],
3533[gf_ar_mthly_bill.clcn_bsc_tp], [gf_ar_mthly_bill.clcn_mthd], [gf_ar_mthly_bill.chrg_itm_code], [gf_ar_mthly_bill.ccy], [gf_ar_mthly_bill.bill_amt], [gf_ar_mthly_bill.adj_amt],
3534[gf_ar_mthly_bill.rcvd_amt], [gf_ar_mthly_bill.tax_tp], [gf_ar_mthly_bill.tax_rate], [gf_ar_mthly_bill.tax_amt], [gf_ar_mthly_bill.exn_inf], [gf_ar_mthly_bill.anl_dmsn1],
3535[gf_ar_mthly_bill.anl_dmsn2], [gf_ar_mthly_bill.anl_dmsn3], [gf_ar_mthly_bill.anl_dmsn4], [gf_ar_mthly_bill.wrtof_dtl_cnt], [gf_ar_mthly_bill.to_wrtof_dtl_cnt],
3536[gf_ar_mthly_bill.rcrd_id], [gf_ar_mthly_bill.last_moder], [gf_ar_mthly_bill.gmt_create], [gf_ar_mthly_bill.gmt_modified], [gf_ar_mthly_bill.charge_tp],
3537[gf_ar_mthly_bill.stl_ip_role_id], [gf_ar_mthly_bill.svc_amt], [gf_ar_mthly_bill.inved_amt], [gf_ar_mthly_bill.chk_st], [gf_ar_mthly_bill.acnt_day], [gf_ar_mthly_bill.inv_amt],
3538[gf_ar_mthly_bill.rel_inv_amt], [gf_ar_mthly_bill.tp], [gf_ar_mthly_bill.payer_ip_role_id], [gf_ar_mthly_bill.sgn_ip_id], [gf_ar_mthly_bill.sgn_ip_role_id],
3539[gf_ar_mthly_bill.chking_amt], [gf_ar_mthly_bill.frz_amt], [gf_ar_mthly_bill.chked_amt], [gf_ar_mthly_bill.writingoff_amt], [gf_ar_mthly_bill.svc_bill_amt],
3540[gf_ar_mthly_bill.svc_ccy], [gf_ar_mthly_bill.env_source], [gf_ar_mthly_bill.metadata_source], [gf_ar_mthly_bill.setl_time_zone], [gf_ar_mthly_bill.actg_time_zone],
3541[gf_ar_mthly_bill.inter_trade_flag], [gf_ar_mthly_bill.actg_bill_mth], [gf_ar_mthly_bill.auto_writeoff_group_no]), filter(nil), rowset=16
3542force partition granule
35433 - output([gf_ar_mthly_bill.tnt_inst_id], [gf_ar_mthly_bill.bill_no], [column_conv(VARCHAR,utf8mb4_bin,length:4,NULL,substr(gf_ar_mthly_bill.bill_no,
354423, 2))], [gf_ar_mthly_bill.ip_id], [gf_ar_mthly_bill.ip_role_id], [gf_ar_mthly_bill.inst_id], [gf_ar_mthly_bill.pd_code], [gf_ar_mthly_bill.ar_no], [gf_ar_mthly_bill.bill_tp],
3545[gf_ar_mthly_bill.setl_tp], [gf_ar_mthly_bill.bill_st], [gf_ar_mthly_bill.bill_strt_dt], [gf_ar_mthly_bill.bill_end_dt], [gf_ar_mthly_bill.bill_mth], [gf_ar_mthly_bill.acrd_dt],
3546[gf_ar_mthly_bill.gmt_pay], [gf_ar_mthly_bill.payee_ac], [gf_ar_mthly_bill.payer_ac], [gf_ar_mthly_bill.pay_way], [gf_ar_mthly_bill.pay_orig], [gf_ar_mthly_bill.clcn_bsc_amt],
3547[gf_ar_mthly_bill.clcn_bsc_tp], [gf_ar_mthly_bill.clcn_mthd], [gf_ar_mthly_bill.chrg_itm_code], [gf_ar_mthly_bill.ccy], [gf_ar_mthly_bill.bill_amt], [gf_ar_mthly_bill.adj_amt],
3548[gf_ar_mthly_bill.rcvd_amt], [gf_ar_mthly_bill.tax_tp], [gf_ar_mthly_bill.tax_rate], [gf_ar_mthly_bill.tax_amt], [gf_ar_mthly_bill.exn_inf], [gf_ar_mthly_bill.anl_dmsn1],
3549[gf_ar_mthly_bill.anl_dmsn2], [gf_ar_mthly_bill.anl_dmsn3], [gf_ar_mthly_bill.anl_dmsn4], [gf_ar_mthly_bill.wrtof_dtl_cnt], [gf_ar_mthly_bill.to_wrtof_dtl_cnt],
3550[gf_ar_mthly_bill.rcrd_id], [gf_ar_mthly_bill.last_moder], [gf_ar_mthly_bill.gmt_create], [gf_ar_mthly_bill.gmt_modified], [gf_ar_mthly_bill.charge_tp],
3551[gf_ar_mthly_bill.stl_ip_role_id], [gf_ar_mthly_bill.svc_amt], [gf_ar_mthly_bill.inved_amt], [gf_ar_mthly_bill.chk_st], [gf_ar_mthly_bill.acnt_day], [gf_ar_mthly_bill.inv_amt],
3552[gf_ar_mthly_bill.rel_inv_amt], [gf_ar_mthly_bill.tp], [gf_ar_mthly_bill.payer_ip_role_id], [gf_ar_mthly_bill.sgn_ip_id], [gf_ar_mthly_bill.sgn_ip_role_id],
3553[gf_ar_mthly_bill.chking_amt], [gf_ar_mthly_bill.frz_amt], [gf_ar_mthly_bill.chked_amt], [gf_ar_mthly_bill.writingoff_amt], [gf_ar_mthly_bill.svc_bill_amt],
3554[gf_ar_mthly_bill.svc_ccy], [gf_ar_mthly_bill.env_source], [gf_ar_mthly_bill.metadata_source], [gf_ar_mthly_bill.setl_time_zone], [gf_ar_mthly_bill.actg_time_zone],
3555[gf_ar_mthly_bill.inter_trade_flag], [gf_ar_mthly_bill.actg_bill_mth], [gf_ar_mthly_bill.auto_writeoff_group_no]), filter(nil), rowset=16
3556access([gf_ar_mthly_bill.tnt_inst_id], [gf_ar_mthly_bill.bill_no], [gf_ar_mthly_bill.ip_id], [gf_ar_mthly_bill.ip_role_id], [gf_ar_mthly_bill.inst_id],
3557[gf_ar_mthly_bill.pd_code], [gf_ar_mthly_bill.ar_no], [gf_ar_mthly_bill.bill_tp], [gf_ar_mthly_bill.setl_tp], [gf_ar_mthly_bill.bill_st], [gf_ar_mthly_bill.bill_strt_dt],
3558[gf_ar_mthly_bill.bill_end_dt], [gf_ar_mthly_bill.bill_mth], [gf_ar_mthly_bill.acrd_dt], [gf_ar_mthly_bill.gmt_pay], [gf_ar_mthly_bill.payee_ac], [gf_ar_mthly_bill.payer_ac],
3559[gf_ar_mthly_bill.pay_way], [gf_ar_mthly_bill.pay_orig], [gf_ar_mthly_bill.clcn_bsc_amt], [gf_ar_mthly_bill.clcn_bsc_tp], [gf_ar_mthly_bill.clcn_mthd],
3560[gf_ar_mthly_bill.chrg_itm_code], [gf_ar_mthly_bill.ccy], [gf_ar_mthly_bill.bill_amt], [gf_ar_mthly_bill.adj_amt], [gf_ar_mthly_bill.rcvd_amt], [gf_ar_mthly_bill.tax_tp],
3561[gf_ar_mthly_bill.tax_rate], [gf_ar_mthly_bill.tax_amt], [gf_ar_mthly_bill.exn_inf], [gf_ar_mthly_bill.anl_dmsn1], [gf_ar_mthly_bill.anl_dmsn2], [gf_ar_mthly_bill.anl_dmsn3],
3562[gf_ar_mthly_bill.anl_dmsn4], [gf_ar_mthly_bill.wrtof_dtl_cnt], [gf_ar_mthly_bill.to_wrtof_dtl_cnt], [gf_ar_mthly_bill.rcrd_id], [gf_ar_mthly_bill.last_moder],
3563[gf_ar_mthly_bill.gmt_create], [gf_ar_mthly_bill.gmt_modified], [gf_ar_mthly_bill.charge_tp], [gf_ar_mthly_bill.stl_ip_role_id], [gf_ar_mthly_bill.svc_amt],
3564[gf_ar_mthly_bill.inved_amt], [gf_ar_mthly_bill.chk_st], [gf_ar_mthly_bill.acnt_day], [gf_ar_mthly_bill.inv_amt], [gf_ar_mthly_bill.rel_inv_amt], [gf_ar_mthly_bill.tp],
3565[gf_ar_mthly_bill.payer_ip_role_id], [gf_ar_mthly_bill.sgn_ip_id], [gf_ar_mthly_bill.sgn_ip_role_id], [gf_ar_mthly_bill.chking_amt], [gf_ar_mthly_bill.frz_amt],
3566[gf_ar_mthly_bill.chked_amt], [gf_ar_mthly_bill.writingoff_amt], [gf_ar_mthly_bill.svc_bill_amt], [gf_ar_mthly_bill.svc_ccy], [gf_ar_mthly_bill.env_source],
3567[gf_ar_mthly_bill.metadata_source], [gf_ar_mthly_bill.setl_time_zone], [gf_ar_mthly_bill.actg_time_zone], [gf_ar_mthly_bill.inter_trade_flag], [gf_ar_mthly_bill.actg_bill_mth],
3568[gf_ar_mthly_bill.auto_writeoff_group_no]), partitions(p[0-8])
3569is_index_back=false, is_global_index=false,
3570range_key([gf_ar_mthly_bill.tnt_inst_id], [gf_ar_mthly_bill.bill_no]), range(MIN,MIN ; MAX,MAX)always true
3571select * from gf_ar_mthly_bill;
3572+-------------+------------------------------------+-------+------------+---------+---------+-------+---------+---------+---------+--------------+-------------+----------+---------+----------------------------+----------+----------+---------+----------+--------------+-------------+-----------+---------------+-----+----------+---------+----------+--------+------------+---------+---------+-----------+-----------+-----------+-----------+---------------+------------------+---------+------------+----------------------------+----------------------------+-----------+----------------+---------+-----------+--------+----------+---------+-------------+------+------------------+-----------+----------------+------------+---------+-----------+----------------+--------------+---------+------------+-----------------+----------------+----------------+------------------+---------------+------------------------+--------------+
3573| tnt_inst_id | bill_no | ip_id | ip_role_id | inst_id | pd_code | ar_no | bill_tp | setl_tp | bill_st | bill_strt_dt | bill_end_dt | bill_mth | acrd_dt | gmt_pay | payee_ac | payer_ac | pay_way | pay_orig | clcn_bsc_amt | clcn_bsc_tp | clcn_mthd | chrg_itm_code | ccy | bill_amt | adj_amt | rcvd_amt | tax_tp | tax_rate | tax_amt | exn_inf | anl_dmsn1 | anl_dmsn2 | anl_dmsn3 | anl_dmsn4 | wrtof_dtl_cnt | to_wrtof_dtl_cnt | rcrd_id | last_moder | gmt_create | gmt_modified | charge_tp | stl_ip_role_id | svc_amt | inved_amt | chk_st | acnt_day | inv_amt | rel_inv_amt | tp | payer_ip_role_id | sgn_ip_id | sgn_ip_role_id | chking_amt | frz_amt | chked_amt | writingoff_amt | svc_bill_amt | svc_ccy | env_source | metadata_source | setl_time_zone | actg_time_zone | inter_trade_flag | actg_bill_mth | auto_writeoff_group_no | partition_id |
3574+-------------+------------------------------------+-------+------------+---------+---------+-------+---------+---------+---------+--------------+-------------+----------+---------+----------------------------+----------+----------+---------+----------+--------------+-------------+-----------+---------------+-----+----------+---------+----------+--------+------------+---------+---------+-----------+-----------+-----------+-----------+---------------+------------------+---------+------------+----------------------------+----------------------------+-----------+----------------+---------+-----------+--------+----------+---------+-------------+------+------------------+-----------+----------------+------------+---------+-----------+----------------+--------------+---------+------------+-----------------+----------------+----------------+------------------+---------------+------------------------+--------------+
3575| ylctest | 2018090310122000040400820033834415 | 1 | 1 | 1 | NULL | NULL | 1 | 1 | 01 | 1 | 1 | 1 | NULL | 2021-05-17 12:09:35.000000 | NULL | NULL | NULL | NULL | 123.1200 | NULL | NULL | NULL | 1 | 1 | 4 | 2 | 1 | 1.00000000 | 3 | 123456 | 123456 | 234567 | 345678 | 456789 | 9 | 8 | 1 | ylc | 2021-05-17 12:09:34.000000 | 2021-05-17 12:09:34.000000 | NULL | NULL | 5 | NULL | 06 | NULL | 6 | NULL | NULL | NULL | NULL | NULL | 10 | 12 | 11 | 7 | 13 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 82 |
3576+-------------+------------------------------------+-------+------------+---------+---------+-------+---------+---------+---------+--------------+-------------+----------+---------+----------------------------+----------+----------+---------+----------+--------------+-------------+-----------+---------------+-----+----------+---------+----------+--------+------------+---------+---------+-----------+-----------+-----------+-----------+---------------+------------------+---------+------------+----------------------------+----------------------------+-----------+----------------+---------+-----------+--------+----------+---------+-------------+------+------------------+-----------+----------------+------------+---------+-----------+----------------+--------------+---------+------------+-----------------+----------------+----------------+------------------+---------------+------------------------+--------------+
3577drop table gf_ar_mthly_bill;
3578set binlog_row_image='FULL';
3579
3580drop table if exists TBFUNDSALESTAT;
3581Warnings:
3582Note 1051 Unknown table 'test.tbfundsalestat'
3583CREATE TABLE TBFUNDSALESTAT (
3584PRD_CODE VARCHAR(32) DEFAULT ' ',
3585SELLER_CODE VARCHAR(9) DEFAULT ' ',
3586HOLD_AMT NUMBER(18,2) DEFAULT 0
3587);
3588
3589
3590EXPLAIN BASIC UPDATE tbfundsalestat a
3591SET a.hold_amt = (SELECT /*+merge*/Sum(c.hold_amt)
3592FROM tbfundsalestat c
3593WHERE c.prd_code = a.prd_code)
3594WHERE a.seller_code = (SELECT /*+unnest*/Max(b.seller_code)
3595FROM tbfundsalestat b
3596WHERE a.prd_code = b.prd_code);
3597Query Plan
3598========================================
3599|ID|OPERATOR |NAME |
3600----------------------------------------
3601|0 |UPDATE | |
3602|1 |└─SUBPLAN SCAN |VIEW3|
3603|2 | └─HASH GROUP BY | |
3604|3 | └─HASH RIGHT OUTER JOIN | |
3605|4 | ├─TABLE FULL SCAN |c |
3606|5 | └─HASH JOIN | |
3607|6 | ├─SUBPLAN SCAN |VIEW1|
3608|7 | │ └─HASH GROUP BY | |
3609|8 | │ └─TABLE FULL SCAN|b |
3610|9 | └─TABLE FULL SCAN |a |
3611========================================
3612Outputs & filters:
3613-------------------------------------
36140 - output(nil), filter(nil)
3615table_columns([{VIEW3: ({tbfundsalestat: (VIEW3.a.__pk_increment, VIEW3.a.PRD_CODE, VIEW3.a.SELLER_CODE, VIEW3.a.HOLD_AMT)}), hash_distinct}]),
3616update([VIEW3.a.HOLD_AMT=column_conv(DECIMAL_INT,PS:(18,2),NULL,cast(VIEW3.VIEW2.Sum(c.hold_amt), DECIMAL_INT(18, 2)))])
36171 - output([VIEW3.a.__pk_increment], [VIEW3.a.PRD_CODE], [VIEW3.a.SELLER_CODE], [VIEW3.a.HOLD_AMT], [VIEW3.VIEW2.Sum(c.hold_amt)]), filter(nil), rowset=16
3618access([VIEW3.a.__pk_increment], [VIEW3.a.PRD_CODE], [VIEW3.a.SELLER_CODE], [VIEW3.a.HOLD_AMT], [VIEW3.VIEW2.Sum(c.hold_amt)])
36192 - output([a.__pk_increment], [a.PRD_CODE], [a.SELLER_CODE], [a.HOLD_AMT], [T_FUN_SUM(c.HOLD_AMT)]), filter(nil), rowset=16
3620group([a.__pk_increment], [c.PRD_CODE]), agg_func([T_FUN_SUM(c.HOLD_AMT)])
36213 - output([a.__pk_increment], [c.PRD_CODE], [a.PRD_CODE], [a.SELLER_CODE], [a.HOLD_AMT], [c.HOLD_AMT]), filter(nil), rowset=16
3622equal_conds([c.PRD_CODE = a.PRD_CODE]), other_conds(nil)
36234 - output([c.PRD_CODE], [c.HOLD_AMT]), filter(nil), rowset=16
3624access([c.PRD_CODE], [c.HOLD_AMT]), partitions(p0)
3625is_index_back=false, is_global_index=false,
3626range_key([c.__pk_increment]), range(MIN ; MAX)always true
36275 - output([a.__pk_increment], [a.PRD_CODE], [a.SELLER_CODE], [a.HOLD_AMT]), filter(nil), rowset=16
3628equal_conds([a.SELLER_CODE = VIEW1.Max(b.seller_code)], [a.PRD_CODE = VIEW1.b.PRD_CODE]), other_conds(nil)
36296 - output([VIEW1.Max(b.seller_code)], [VIEW1.b.PRD_CODE]), filter(nil), rowset=16
3630access([VIEW1.Max(b.seller_code)], [VIEW1.b.PRD_CODE])
36317 - output([T_FUN_MAX(b.SELLER_CODE)], [b.PRD_CODE]), filter(nil), rowset=16
3632group([b.PRD_CODE]), agg_func([T_FUN_MAX(b.SELLER_CODE)])
36338 - output([b.PRD_CODE], [b.SELLER_CODE]), filter(nil), rowset=16
3634access([b.PRD_CODE], [b.SELLER_CODE]), partitions(p0)
3635is_index_back=false, is_global_index=false,
3636range_key([b.__pk_increment]), range(MIN ; MAX)always true
36379 - output([a.__pk_increment], [a.HOLD_AMT], [a.PRD_CODE], [a.SELLER_CODE]), filter(nil), rowset=16
3638access([a.__pk_increment], [a.HOLD_AMT], [a.PRD_CODE], [a.SELLER_CODE]), partitions(p0)
3639is_index_back=false, is_global_index=false,
3640range_key([a.__pk_increment]), range(MIN ; MAX)always true
3641UPDATE tbfundsalestat a
3642SET a.hold_amt = (SELECT /*+merge*/Sum(c.hold_amt)
3643FROM tbfundsalestat c
3644WHERE c.prd_code = a.prd_code)
3645WHERE a.seller_code = (SELECT /*+unnest*/Max(b.seller_code)
3646FROM tbfundsalestat b
3647WHERE a.prd_code = b.prd_code);
3648
3649
3650EXPLAIN BASIC UPDATE tbfundsalestat a
3651SET a.hold_amt = (SELECT /*+merge*/Sum(c.hold_amt)
3652FROM tbfundsalestat c
3653WHERE c.prd_code = a.prd_code)
3654WHERE a.seller_code = (SELECT /*+unnest*/Max(b.seller_code)
3655FROM tbfundsalestat b
3656WHERE a.prd_code = b.prd_code);
3657Query Plan
3658========================================
3659|ID|OPERATOR |NAME |
3660----------------------------------------
3661|0 |UPDATE | |
3662|1 |└─SUBPLAN SCAN |VIEW3|
3663|2 | └─HASH GROUP BY | |
3664|3 | └─HASH RIGHT OUTER JOIN | |
3665|4 | ├─TABLE FULL SCAN |c |
3666|5 | └─HASH JOIN | |
3667|6 | ├─SUBPLAN SCAN |VIEW1|
3668|7 | │ └─HASH GROUP BY | |
3669|8 | │ └─TABLE FULL SCAN|b |
3670|9 | └─TABLE FULL SCAN |a |
3671========================================
3672Outputs & filters:
3673-------------------------------------
36740 - output(nil), filter(nil)
3675table_columns([{VIEW3: ({tbfundsalestat: (VIEW3.a.__pk_increment, VIEW3.a.PRD_CODE, VIEW3.a.SELLER_CODE, VIEW3.a.HOLD_AMT)}), hash_distinct}]),
3676update([VIEW3.a.HOLD_AMT=column_conv(DECIMAL_INT,PS:(18,2),NULL,cast(VIEW3.VIEW2.Sum(c.hold_amt), DECIMAL_INT(18, 2)))])
36771 - output([VIEW3.a.__pk_increment], [VIEW3.a.PRD_CODE], [VIEW3.a.SELLER_CODE], [VIEW3.a.HOLD_AMT], [VIEW3.VIEW2.Sum(c.hold_amt)]), filter(nil), rowset=16
3678access([VIEW3.a.__pk_increment], [VIEW3.a.PRD_CODE], [VIEW3.a.SELLER_CODE], [VIEW3.a.HOLD_AMT], [VIEW3.VIEW2.Sum(c.hold_amt)])
36792 - output([a.__pk_increment], [a.PRD_CODE], [a.SELLER_CODE], [a.HOLD_AMT], [T_FUN_SUM(c.HOLD_AMT)]), filter(nil), rowset=16
3680group([a.__pk_increment], [c.PRD_CODE]), agg_func([T_FUN_SUM(c.HOLD_AMT)])
36813 - output([a.__pk_increment], [c.PRD_CODE], [a.PRD_CODE], [a.SELLER_CODE], [a.HOLD_AMT], [c.HOLD_AMT]), filter(nil), rowset=16
3682equal_conds([c.PRD_CODE = a.PRD_CODE]), other_conds(nil)
36834 - output([c.PRD_CODE], [c.HOLD_AMT]), filter(nil), rowset=16
3684access([c.PRD_CODE], [c.HOLD_AMT]), partitions(p0)
3685is_index_back=false, is_global_index=false,
3686range_key([c.__pk_increment]), range(MIN ; MAX)always true
36875 - output([a.__pk_increment], [a.PRD_CODE], [a.SELLER_CODE], [a.HOLD_AMT]), filter(nil), rowset=16
3688equal_conds([a.SELLER_CODE = VIEW1.Max(b.seller_code)], [a.PRD_CODE = VIEW1.b.PRD_CODE]), other_conds(nil)
36896 - output([VIEW1.Max(b.seller_code)], [VIEW1.b.PRD_CODE]), filter(nil), rowset=16
3690access([VIEW1.Max(b.seller_code)], [VIEW1.b.PRD_CODE])
36917 - output([T_FUN_MAX(b.SELLER_CODE)], [b.PRD_CODE]), filter(nil), rowset=16
3692group([b.PRD_CODE]), agg_func([T_FUN_MAX(b.SELLER_CODE)])
36938 - output([b.PRD_CODE], [b.SELLER_CODE]), filter(nil), rowset=16
3694access([b.PRD_CODE], [b.SELLER_CODE]), partitions(p0)
3695is_index_back=false, is_global_index=false,
3696range_key([b.__pk_increment]), range(MIN ; MAX)always true
36979 - output([a.__pk_increment], [a.HOLD_AMT], [a.PRD_CODE], [a.SELLER_CODE]), filter(nil), rowset=16
3698access([a.__pk_increment], [a.HOLD_AMT], [a.PRD_CODE], [a.SELLER_CODE]), partitions(p0)
3699is_index_back=false, is_global_index=false,
3700range_key([a.__pk_increment]), range(MIN ; MAX)always true
3701UPDATE tbfundsalestat a
3702SET a.hold_amt = (SELECT /*+merge*/Sum(c.hold_amt)
3703FROM tbfundsalestat c
3704WHERE c.prd_code = a.prd_code)
3705WHERE a.seller_code = (SELECT /*+unnest*/Max(b.seller_code)
3706FROM tbfundsalestat b
3707WHERE a.prd_code = b.prd_code);
3708
3709drop table if exists TBFUNDSALESTAT;
3710