summaryrefslogtreecommitdiff
path: root/mysql-test/r/analyze_stmt.result
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/r/analyze_stmt.result')
-rw-r--r--mysql-test/r/analyze_stmt.result111
1 files changed, 71 insertions, 40 deletions
diff --git a/mysql-test/r/analyze_stmt.result b/mysql-test/r/analyze_stmt.result
index 0a42728c81c..c3c98593210 100644
--- a/mysql-test/r/analyze_stmt.result
+++ b/mysql-test/r/analyze_stmt.result
@@ -6,17 +6,17 @@ INSERT INTO t1 select * from t0;
# Try a few basic selects to see that r_rows and r_filtered columns work
analyze select * from t1;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10 100.00 100.00
+1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10.00 100.00 100.00
analyze select * from t1 where a<5;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10 100.00 50.00 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10.00 100.00 50.00 Using where
analyze select * from t1 where a>100;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10 100.00 0.00 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10.00 100.00 0.00 Using where
# ANALYZE DELETE will delete rows:
analyze delete from t1 where a in (2,3,4);
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10 100.00 30.00 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10.00 100.00 30.00 Using where
select * from t1;
a
0
@@ -32,7 +32,7 @@ create table t1(a int, b int);
insert into t1 select a,a from t0;
analyze update t1 set b=100+b where a in (6,7,8);
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10 100.00 30.00 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10.00 100.00 30.00 Using where
select * from t1;
a b
0 0
@@ -51,14 +51,14 @@ create table t1(a int, b int);
insert into t1 select a,a from t0;
analyze (select * from t1 A where a<5) union (select * from t1 B where a in (5,6));
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 PRIMARY A ALL NULL NULL NULL NULL 10 10 100.00 50.00 Using where
-2 UNION B ALL NULL NULL NULL NULL 10 10 100.00 20.00 Using where
-NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL 7 NULL NULL
+1 PRIMARY A ALL NULL NULL NULL NULL 10 10.00 100.00 50.00 Using where
+2 UNION B ALL NULL NULL NULL NULL 10 10.00 100.00 20.00 Using where
+NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL 7.00 NULL NULL
analyze (select * from t1 A where a<5) union (select * from t1 B where a in (1,2));
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 PRIMARY A ALL NULL NULL NULL NULL 10 10 100.00 50.00 Using where
-2 UNION B ALL NULL NULL NULL NULL 10 10 100.00 20.00 Using where
-NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL 5 NULL NULL
+1 PRIMARY A ALL NULL NULL NULL NULL 10 10.00 100.00 50.00 Using where
+2 UNION B ALL NULL NULL NULL NULL 10 10.00 100.00 20.00 Using where
+NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL 5.00 NULL NULL
drop table t1;
drop table t0;
#
@@ -72,12 +72,12 @@ insert into t1 values (1,1),(2,2),(3,3);
# See .test file for the right values of r_rows and r_filtered.
analyze select a, a in (select t0.b from t0 where t0.b+1=t1.b+1) from t1;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 PRIMARY t1 ALL NULL NULL NULL NULL 3 3 100.00 100.00
-2 DEPENDENT SUBQUERY t0 ALL NULL NULL NULL NULL 10 3 100.00 33.33 Using where
+1 PRIMARY t1 ALL NULL NULL NULL NULL 3 3.00 100.00 100.00
+2 DEPENDENT SUBQUERY t0 ALL NULL NULL NULL NULL 10 3.00 100.00 33.33 Using where
# Try a subquery that is never executed
analyze select a, a in (select t0.b from t0 where t0.b+1=t1.b+1) from t1 where t1.a > 5;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 PRIMARY t1 ALL NULL NULL NULL NULL 3 3 100.00 0.00 Using where
+1 PRIMARY t1 ALL NULL NULL NULL NULL 3 3.00 100.00 0.00 Using where
2 DEPENDENT SUBQUERY t0 ALL NULL NULL NULL NULL 10 NULL 100.00 NULL Using where
drop table t0, t1;
#
@@ -95,8 +95,8 @@ id select_type table type possible_keys key key_len ref rows Extra
# These should have filtered=50
analyze select * from t0, t1 where t0.a<5 and t1.a<5;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t0 ALL NULL NULL NULL NULL 10 10 100.00 50.00 Using where
-1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10 100.00 50.00 Using where; Using join buffer (flat, BNL join)
+1 SIMPLE t0 ALL NULL NULL NULL NULL 10 10.00 100.00 50.00 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10.00 100.00 50.00 Using where; Using join buffer (flat, BNL join)
explain select * from t0, t1 where t0.a<5 and t1.b=t0.b;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t0 ALL NULL NULL NULL NULL 10 Using where
@@ -104,8 +104,8 @@ id select_type table type possible_keys key key_len ref rows Extra
# Now, t1 should have filtered=10
analyze select * from t0, t1 where t0.a<5 and t1.b=t0.b;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t0 ALL NULL NULL NULL NULL 10 10 100.00 50.00 Using where
-1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10 100.00 10.00 Using where; Using join buffer (flat, BNL join)
+1 SIMPLE t0 ALL NULL NULL NULL NULL 10 10.00 100.00 50.00 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10.00 100.00 10.00 Using where; Using join buffer (flat, BNL join)
explain select * from t0, t1 where t0.a<5 and t1.a<5 and t1.b=t0.b;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t0 ALL NULL NULL NULL NULL 10 Using where
@@ -113,8 +113,8 @@ id select_type table type possible_keys key key_len ref rows Extra
# Now, t1 should have filtered=10
analyze select * from t0, t1 where t0.a<5 and t1.a<5 and t1.b=t0.b;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t0 ALL NULL NULL NULL NULL 10 10 100.00 50.00 Using where
-1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10 100.00 10.00 Using where; Using join buffer (flat, BNL join)
+1 SIMPLE t0 ALL NULL NULL NULL NULL 10 10.00 100.00 50.00 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10.00 100.00 10.00 Using where; Using join buffer (flat, BNL join)
# TODO: Check what is counted for "range checked for each record".
#
# Test for joins
@@ -127,13 +127,13 @@ from t0 A, t0 B, t0 C;
# This always has matches, filtered=100%.
analyze select * from t1,t2 where t2.key1=t1.a;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10 100.00 100.00 Using where
-1 SIMPLE t2 ref key1 key1 5 test.t1.a 1 1 100.00 100.00
+1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10.00 100.00 100.00 Using where
+1 SIMPLE t2 ref key1 key1 5 test.t1.a 1 1.00 100.00 100.00
# This shows r_rows=0. It is actually 0.5 (should r_rows be changed to double?)
analyze select * from t1,t2 where t2.key2x=t1.a;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10 100.00 100.00 Using where
-1 SIMPLE t2 ref key2x key2x 5 test.t1.a 1 0 100.00 100.00
+1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10.00 100.00 100.00 Using where
+1 SIMPLE t2 ref key2x key2x 5 test.t1.a 1 0.50 100.00 100.00
select * from t1,t2 where t2.key2x=t1.a;
a b key1 key2x col1
0 0 0 0 0
@@ -144,8 +144,8 @@ a b key1 key2x col1
# This has t2.filtered=40% (there are 5 values: {0,1,2,3,4}. two of them have mod=0)
analyze select * from t1,t2 where t2.key2x=t1.a and mod(t2.col1,4)=0;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10 100.00 100.00 Using where
-1 SIMPLE t2 ref key2x key2x 5 test.t1.a 1 0 100.00 40.00 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10.00 100.00 100.00 Using where
+1 SIMPLE t2 ref key2x key2x 5 test.t1.a 1 0.50 100.00 40.00 Using where
drop table t0,t1,t2;
#
# Check non-merged derived tables
@@ -156,8 +156,8 @@ insert into t0 values
update t0 set b=b/3;
analyze select * from (select count(*),max(a),b from t0 group by b) T;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 PRIMARY <derived2> ALL NULL NULL NULL NULL 10 4 100.00 100.00
-2 DERIVED t0 ALL NULL NULL NULL NULL 10 10 100.00 100.00 Using temporary; Using filesort
+1 PRIMARY <derived2> ALL NULL NULL NULL NULL 10 4.00 100.00 100.00
+2 DERIVED t0 ALL NULL NULL NULL NULL 10 10.00 100.00 100.00 Using temporary; Using filesort
drop table t0;
#
# Check ORDER/GROUP BY
@@ -167,7 +167,7 @@ insert into t0 values
(0,0),(1,1),(2,2),(3,3),(4,4),(5,5),(6,6),(7,7),(8,8),(9,9);
analyze select count(*),max(a),b from t0 where a<7 group by b;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t0 ALL NULL NULL NULL NULL 10 10 100.00 70.00 Using where; Using temporary; Using filesort
+1 SIMPLE t0 ALL NULL NULL NULL NULL 10 10.00 100.00 70.00 Using where; Using temporary; Using filesort
drop table t0;
#
# Check multi-table UPDATE/DELETE.
@@ -178,12 +178,12 @@ insert into t0 values (0,0),(2,2),(4,4), (8,8);
insert into t1 values (0,0),(2,2), (6,6);
analyze select * from t0,t1 where t0.a=t1.a;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 3 100.00 100.00
-1 SIMPLE t0 ALL NULL NULL NULL NULL 4 4 100.00 16.67 Using where; Using join buffer (flat, BNL join)
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 3.00 100.00 100.00
+1 SIMPLE t0 ALL NULL NULL NULL NULL 4 4.00 100.00 16.67 Using where; Using join buffer (flat, BNL join)
analyze update t0,t1 set t1.b=5555 where t0.a=t1.a;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 3 100.00 100.00
-1 SIMPLE t0 ALL NULL NULL NULL NULL 4 4 100.00 16.67 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 3.00 100.00 100.00
+1 SIMPLE t0 ALL NULL NULL NULL NULL 4 4.00 100.00 16.67 Using where
select * from t1;
a b
0 5555
@@ -191,8 +191,8 @@ a b
6 6
analyze delete t1 from t1, t0 where t0.a=t1.a;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 3 100.00 100.00
-1 SIMPLE t0 ALL NULL NULL NULL NULL 4 4 100.00 16.67 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 3.00 100.00 100.00
+1 SIMPLE t0 ALL NULL NULL NULL NULL 4 4.00 100.00 16.67 Using where
select * from t1;
a b
6 6
@@ -240,7 +240,7 @@ create table t1 (i int);
insert into t1 values (1),(2),(3),(4);
analyze update t1 set i=8;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 4 100.00 100.00
+1 SIMPLE t1 ALL NULL NULL NULL NULL 4 4.00 100.00 100.00
drop table t1;
#
# Check ANALYZE SELECT INTO
@@ -257,7 +257,7 @@ drop table t1;
create table t1 (i int);
analyze delete from t1 returning *;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 0 0 100.00 100.00
+1 SIMPLE t1 ALL NULL NULL NULL NULL 0 0.00 100.00 100.00
drop table t1;
#
# MDEV-6396: ANALYZE INSERT/REPLACE is accepted, but does not produce a plan
@@ -283,15 +283,15 @@ create table t1(a int);
insert into t1 values (1),(2);
analyze select a from t1 where a <2 into @var;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 2 2 100.00 50.00 Using where
+1 SIMPLE t1 ALL NULL NULL NULL NULL 2 2.00 100.00 50.00 Using where
analyze select a from t1 into @var;
ERROR 42000: Result consisted of more than one row
analyze insert into t1 select * from t1;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 2 2 100.00 100.00 Using temporary
+1 SIMPLE t1 ALL NULL NULL NULL NULL 2 2.00 100.00 100.00 Using temporary
analyze select * into outfile '../../tmp/data1.tmp' from t1;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 4 100.00 100.00
+1 SIMPLE t1 ALL NULL NULL NULL NULL 4 4.00 100.00 100.00
drop table t1;
#
# MDEV-7024: Assertion `! is_set()' failed in
@@ -303,3 +303,34 @@ execute stmt;
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL no matching row in const table
drop table t1;
+#
+# MDEV-7674: ANALYZE shows r_rows=0
+#
+create table t1(a int);
+insert into t1 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
+create table t2 (a int, key(a));
+insert into t2 values (0),(1);
+analyze select * from t1 straight_join t2 force index(a) where t2.a=t1.a;
+id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 10 10.00 100.00 100.00 Using where
+1 SIMPLE t2 ref a a 5 test.t1.a 2 0.20 100.00 100.00 Using index
+drop table t1,t2;
+#
+# MDEV-8063: Unconditional ANALYZE DELETE does not delete rows
+#
+create table t1 (i int);
+insert into t1 values (1),(2);
+analyze delete from t1;
+id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL 2 NULL NULL NULL Deleting all rows
+select * from t1;
+i
+insert into t1 values (1),(2);
+explain delete from t1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE NULL NULL NULL NULL NULL NULL 2 Deleting all rows
+select * from t1;
+i
+1
+2
+drop table t1;