📄 ndb_condition_pushdown.result
字号:
(tiny not between -3 and -1) and (short not between -3 and -1) and (medium not between -3 and -1) and (long_int not between -3 and -1) and (longlong not between -3 and -1) and (utiny not between 1 and 3) and (ushort not between 1 and 3) and (umedium not between 1 and 3) and (ulong not between 1 and 3) and (ulonglong not between 1 and 3) and /* (bits not between b'001' and b'011') and */(options not between 'one' and 'three') and (flags not between 'one' and 'one,two,three') and (date_field not between '1901-01-01' and '1903-03-03') and(year_field not between '1901' and '1903') and(time_field not between '01:01:01' and '03:03:03') and (date_time not between '1901-01-01 01:01:01' and '1903-03-03 03:03:03') order by auto;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t1 range medium_index medium_index 3 NULL 20 Using where with pushed condition; Using filesortselect auto from t1 where(string not between "aaaa" and "cccc") and (vstring not between "aaaa" and "cccc") and (bin not between 0xAAAA and 0xCCCC) and (vbin not between 0xAAAA and 0xCCCC) and (tiny not between -3 and -1) and (short not between -3 and -1) and (medium not between -3 and -1) and (long_int not between -3 and -1) and (longlong not between -3 and -1) and (utiny not between 1 and 3) and (ushort not between 1 and 3) and (umedium not between 1 and 3) and (ulong not between 1 and 3) and (ulonglong not between 1 and 3) and /* (bits not between b'001' and b'011') and */(options not between 'one' and 'three') and (flags not between 'one' and 'one,two,three') and (date_field not between '1901-01-01' and '1903-03-03') and(year_field not between '1901' and '1903') and(time_field not between '01:01:01' and '03:03:03') and (date_time not between '1901-01-01 01:01:01' and '1903-03-03 03:03:03') order by auto;auto4explainselect auto from t1 where("aaaa" not between string and string) and ("aaaa" not between vstring and vstring) and (0xAAAA not between bin and bin) and (0xAAAA not between vbin and vbin) and (-1 not between tiny and tiny) and (-1 not between short and short) and (-1 not between medium and medium) and (-1 not between long_int and long_int) and (-1 not between longlong and longlong) and (1 not between utiny and utiny) and (1 not between ushort and ushort) and (1 not between umedium and umedium) and (1 not between ulong and ulong) and (1 not between ulonglong and ulonglong) and /* (b'001' not between bits and bits) and */('one' not between options and options) and ('one' not between flags and flags) and ('1901-01-01' not between date_field and date_field) and('1901' not between year_field and year_field) and('01:01:01' not between time_field and time_field) and ('1901-01-01 01:01:01' not between date_time and date_time) order by auto;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where with pushed condition; Using filesortselect auto from t1 where("aaaa" not between string and string) and ("aaaa" not between vstring and vstring) and (0xAAAA not between bin and bin) and (0xAAAA not between vbin and vbin) and (-1 not between tiny and tiny) and (-1 not between short and short) and (-1 not between medium and medium) and (-1 not between long_int and long_int) and (-1 not between longlong and longlong) and (1 not between utiny and utiny) and (1 not between ushort and ushort) and (1 not between umedium and umedium) and (1 not between ulong and ulong) and (1 not between ulonglong and ulonglong) and /* (b'001' not between bits and bits) and */('one' not between options and options) and ('one' not between flags and flags) and ('1901-01-01' not between date_field and date_field) and('1901' not between year_field and year_field) and('01:01:01' not between time_field and time_field) and ('1901-01-01 01:01:01' not between date_time and date_time) order by auto;auto234explainselect auto from t1 wherestring in("aaaa","cccc") and vstring in("aaaa","cccc") and bin in(0xAAAA,0xCCCC) and vbin in(0xAAAA,0xCCCC) and tiny in(-1,-3) and short in(-1,-3) and medium in(-1,-3) and long_int in(-1,-3) and longlong in(-1,-3) and utiny in(1,3) and ushort in(1,3) and umedium in(1,3) and ulong in(1,3) and ulonglong in(1,3) and /* bits in(b'001',b'011') and */options in('one','three') and flags in('one','one,two,three') and date_field in('1901-01-01','1903-03-03') andyear_field in('1901','1903') andtime_field in('01:01:01','03:03:03') and date_time in('1901-01-01 01:01:01','1903-03-03 03:03:03') order by auto;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t1 range medium_index medium_index 3 NULL 20 Using where with pushed condition; Using filesortselect auto from t1 wherestring in("aaaa","cccc") and vstring in("aaaa","cccc") and bin in(0xAAAA,0xCCCC) and vbin in(0xAAAA,0xCCCC) and tiny in(-1,-3) and short in(-1,-3) and medium in(-1,-3) and long_int in(-1,-3) and longlong in(-1,-3) and utiny in(1,3) and ushort in(1,3) and umedium in(1,3) and ulong in(1,3) and ulonglong in(1,3) and /* bits in(b'001',b'011') and */options in('one','three') and flags in('one','one,two,three') and date_field in('1901-01-01','1903-03-03') andyear_field in('1901','1903') andtime_field in('01:01:01','03:03:03') and date_time in('1901-01-01 01:01:01','1903-03-03 03:03:03') order by auto;auto13explainselect auto from t1 where"aaaa" in(string) and "aaaa" in(vstring) and 0xAAAA in(bin) and 0xAAAA in(vbin) and (-1 in(tiny)) and(-1 in (short)) and(-1 in(medium)) and(-1 in(long_int)) and(-1 in(longlong)) and1 in(utiny) and 1 in(ushort) and 1 in(umedium) and 1 in(ulong) and 1 in(ulonglong) and /* b'001' in(bits) and */'one' in(options) and 'one' in(flags) and '1901-01-01' in(date_field) and'1901' in(year_field) and'01:01:01' in(time_field) and '1901-01-01 01:01:01' in(date_time) order by auto;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t1 ref medium_index medium_index 3 const 10 Using where with pushed condition; Using filesortselect auto from t1 where"aaaa" in(string) and "aaaa" in(vstring) and 0xAAAA in(bin) and 0xAAAA in(vbin) and (-1 in(tiny)) and(-1 in (short)) and(-1 in(medium)) and(-1 in(long_int)) and(-1 in(longlong)) and1 in(utiny) and 1 in(ushort) and 1 in(umedium) and 1 in(ulong) and 1 in(ulonglong) and /* b'001' in(bits) and */'one' in(options) and 'one' in(flags) and '1901-01-01' in(date_field) and'1901' in(year_field) and'01:01:01' in(time_field) and '1901-01-01 01:01:01' in(date_time) order by auto;auto1explainselect auto from t1 wherestring not in("aaaa","cccc") and vstring not in("aaaa","cccc") and bin not in(0xAAAA,0xCCCC) and vbin not in(0xAAAA,0xCCCC) and tiny not in(-1,-3) and short not in(-1,-3) and medium not in(-1,-3) and long_int not in(-1,-3) and longlong not in(-1,-3) and utiny not in(1,3) and ushort not in(1,3) and umedium not in(1,3) and ulong not in(1,3) and ulonglong not in(1,3) and /* bits not in(b'001',b'011') and */options not in('one','three') and flags not in('one','one,two,three') and date_field not in('1901-01-01','1903-03-03') andyear_field not in('1901','1903') andtime_field not in('01:01:01','03:03:03') and date_time not in('1901-01-01 01:01:01','1903-03-03 03:03:03') order by auto;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t1 range medium_index medium_index 3 NULL 30 Using where with pushed condition; Using filesortselect auto from t1 wherestring not in("aaaa","cccc") and vstring not in("aaaa","cccc") and bin not in(0xAAAA,0xCCCC) and vbin not in(0xAAAA,0xCCCC) and tiny not in(-1,-3) and short not in(-1,-3) and medium not in(-1,-3) and long_int not in(-1,-3) and longlong not in(-1,-3) and utiny not in(1,3) and ushort not in(1,3) and umedium not in(1,3) and ulong not in(1,3) and ulonglong not in(1,3) and /* bits not in(b'001',b'011') and */options not in('one','three') and flags not in('one','one,two,three') and date_field not in('1901-01-01','1903-03-03') andyear_field not in('1901','1903') andtime_field not in('01:01:01','03:03:03') and date_time not in('1901-01-01 01:01:01','1903-03-03 03:03:03') order by auto;auto24explainselect auto from t1 where"aaaa" not in(string) and "aaaa" not in(vstring) and 0xAAAA not in(bin) and 0xAAAA not in(vbin) and (-1 not in(tiny)) and(-1 not in(short)) and(-1 not in(medium)) and(-1 not in(long_int)) and(-1 not in(longlong)) and1 not in(utiny) and 1 not in(ushort) and 1 not in(umedium) and 1 not in(ulong) and 1 not in(ulonglong) and /* b'001' not in(bits) and */'one' not in(options) and 'one' not in(flags) and '1901-01-01' not in(date_field) and'1901' not in(year_field) and'01:01:01' not in(time_field) and '1901-01-01 01:01:01' not in(date_time) order by auto;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where with pushed condition; Using filesortselect auto from t1 where"aaaa" not in(string) and "aaaa" not in(vstring) and 0xAAAA not in(bin) and 0xAAAA not in(vbin) and (-1 not in(tiny)) and(-1 not in(short)) and(-1 not in(medium)) and(-1 not in(long_int)) and(-1 not in(longlong)) and1 not in(utiny) and 1 not in(ushort) and 1 not in(umedium) and 1 not in(ulong) and 1 not in(ulonglong) and /* b'001' not in(bits) and */'one' not in(options) and 'one' not in(flags) and '1901-01-01' not in(date_field) and'1901' not in(year_field) and'01:01:01' not in(time_field) and '1901-01-01 01:01:01' not in(date_time) order by auto;auto234update t1set medium = 17where string = "aaaa" and vstring = "aaaa" and bin = 0xAAAA and vbin = 0xAAAA andtiny = -1 and short = -1 and medium = -1 and long_int = -1 and longlong = -1 and real_float > 1.0 and real_float < 2.0 and real_double > 1.0 and real_double < 2.0 andreal_decimal > 1.0 and real_decimal < 2.0 andutiny = 1 and ushort = 1 and umedium = 1 and ulong = 1 and ulonglong = 1 and /* bits = b'001' and */options = 'one' and flags = 'one' and date_field = '1901-01-01' andyear_field = '1901' andtime_field = '01:01:01' and date_time = '1901-01-01 01:01:01';delete from t1 wherestring = "aaaa" and vstring = "aaaa" and bin = 0xAAAA and vbin = 0xAAAA andtiny = -1 and short = -1 and medium = 17 and long_int = -1 and longlong = -1 and real_float > 1.0 and real_float < 2.0 and real_double > 1.0 and real_double < 2.0 andreal_decimal > 1.0 and real_decimal < 2.0 andutiny = 1 and ushort = 1 and umedium = 1 and ulong = 1 and ulonglong = 1 and /* bits = b'001' and */options = 'one' and flags = 'one' and date_field = '1901-01-01' andyear_field = '1901' andtime_field = '01:01:01' and date_time = '1901-01-01 01:01:01';select count(*) from t1;count(*)3explain select * from t2 where attr3 is null or attr1 > 2 and pk1= 3 order by pk1;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t2 ALL PRIMARY NULL NULL NULL 6 Using where with pushed condition; Using filesortselect * from t2 where attr3 is null or attr1 > 2 and pk1= 3 order by pk1;pk1 attr1 attr2 attr32 2 NULL NULL3 3 3 dexplainselect * from t2 where attr3 is not null and attr1 > 2 order by pk1;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where with pushed condition; Using filesortselect * from t2 where attr3 is not null and attr1 > 2 order by pk1;pk1 attr1 attr2 attr33 3 3 d4 4 4 e5 5 5 fexplainselect * from t3 where attr2 > 9223372036854775803 and attr3 != 3 order by pk1;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t3 ALL NULL NULL NULL NULL 6 Using where with pushed condition; Using filesortselect * from t3 where attr2 > 9223372036854775803 and attr3 != 3 order by pk1;pk1 attr1 attr2 attr3 attr42 2 9223372036854775804 2 c4 4 9223372036854775806 4 e5 5 9223372036854775807 5 fexplainselect * from t2,t3 where t2.attr1 < 1 and t2.attr2 = t3.attr2 and t3.attr1 < 5 order by t2.pk1;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where with pushed condition; Using temporary; Using filesort1 SIMPLE t3 ALL NULL NULL NULL NULL 6 Using where with pushed conditionselect * from t2,t3 where t2.attr1 < 1 and t2.attr2 = t3.attr2 and t3.attr1 < 5 order by t2.pk1;pk1 attr1 attr2 attr3 pk1 attr1 attr2 attr3 attr40 0 0 a 0 0 0 0 aexplainselect * from t4 where attr1 < 5 and attr2 > 9223372036854775803 and attr3 != 3 order by t4.pk1;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t4 range attr1 attr1 4 NULL 10 Using where with pushed condition; Using filesortselect * from t4 where attr1 < 5 and attr2 > 9223372036854775803 and attr3 != 3 order by t4.pk1;pk1 attr1 attr2 attr3 attr42 2 9223372036854775804 2 c4 4 9223372036854775806 4 eexplainselect * from t3,t4 where t4.attr1 > 1 and t4.attr2 = t3.attr2 and t4.attr3 < 5 order by t4.pk1;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t4 range attr1 attr1 4 NULL 10 Using where with pushed condition; Using temporary; Using filesort1 SIMPLE t3 ALL NULL NULL NULL NULL 6 Using whereselect * from t3,t4 where t4.attr1 > 1 and t4.attr2 = t3.attr2 and t4.attr3 < 5 order by t4.pk1;pk1 attr1 attr2 attr3 attr4 pk1 attr1 attr2 attr3 attr42 2 9223372036854775804 2 c 2 2 9223372036854775804 2 c3 3 9223372036854775805 3 d 3 3 9223372036854775805 3 d4 4 9223372036854775806 4 e 4 4 9223372036854775806 4 eexplainselect auto from t1 where string = "aaaa" collate latin1_general_ci order by auto;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where; Using filesortexplainselect * from t2 where (attr1 < 2) = (attr2 < 2) order by pk1;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t2 ALL NULL NULL NULL NULL 6 Using where; Using filesortexplainselect * from t3 left join t4 on t4.attr2 = t3.attr2 where t4.attr1 > 1 and t4.attr3 < 5 or t4.attr1 is null order by t4.pk1;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t3 ALL NULL NULL NULL NULL 6 Using temporary; Using filesort1 SIMPLE t4 ALL NULL NULL NULL NULL 6 Using wherecreate table t5 (a int primary key auto_increment, b tinytext not null) engine = ndb;insert into t5 (b) values ('jonas'), ('jensing'), ('johan');set engine_condition_pushdown = off;select * from t5 where b like '%jo%' order by a;a b1 jonas3 johanset engine_condition_pushdown = on;explain select * from t5 where b like '%jo%';id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t5 ALL NULL NULL NULL NULL 3 Using whereselect * from t5 where b like '%jo%' order by a;a b1 jonas3 johanset engine_condition_pushdown = @old_ecpd;DROP TABLE t1,t2,t3,t4,t5;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -