mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 02:05:57 +01:00
MDEV-406: ANALYZE $stmt
-Add analyze_stmt.test/result
This commit is contained in:
parent
eaba1ba4a5
commit
0925ab9d88
2 changed files with 80 additions and 0 deletions
49
mysql-test/r/analyze_stmt.result
Normal file
49
mysql-test/r/analyze_stmt.result
Normal file
|
@ -0,0 +1,49 @@
|
|||
drop table if exists t0,t1,t2,t3;
|
||||
create table t0 (a int) engine=myisam;
|
||||
INSERT INTO t0 VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
|
||||
create table t1 (a int) engine=myisam;
|
||||
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
|
||||
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
|
||||
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
|
||||
# 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 NULL 100.00 30.00 Using where
|
||||
select * from t1;
|
||||
a
|
||||
0
|
||||
1
|
||||
5
|
||||
6
|
||||
7
|
||||
8
|
||||
9
|
||||
drop table t1;
|
||||
# ANALYZE UPDATE will make updates:
|
||||
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 NULL 100.00 30.00 Using where
|
||||
select * from t1;
|
||||
a b
|
||||
0 0
|
||||
1 1
|
||||
2 2
|
||||
3 3
|
||||
4 4
|
||||
5 5
|
||||
6 106
|
||||
7 107
|
||||
8 108
|
||||
9 9
|
||||
drop table t1;
|
||||
drop table t0;
|
31
mysql-test/t/analyze_stmt.test
Normal file
31
mysql-test/t/analyze_stmt.test
Normal file
|
@ -0,0 +1,31 @@
|
|||
#
|
||||
# Tests for "ANALYZE $statement" feature (PostgreSQL's analog is called EXPLAIN ANALYZE)
|
||||
#
|
||||
--disable_warnings
|
||||
drop table if exists t0,t1,t2,t3;
|
||||
--enable_warnings
|
||||
|
||||
create table t0 (a int) engine=myisam;
|
||||
INSERT INTO t0 VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
|
||||
|
||||
create table t1 (a int) engine=myisam;
|
||||
INSERT INTO t1 select * from t0;
|
||||
|
||||
--echo # Try a few basic selects to see that r_rows and r_filtered columns work
|
||||
analyze select * from t1;
|
||||
analyze select * from t1 where a<5;
|
||||
analyze select * from t1 where a>100;
|
||||
|
||||
--echo # ANALYZE DELETE will delete rows:
|
||||
analyze delete from t1 where a in (2,3,4);
|
||||
select * from t1;
|
||||
drop table t1;
|
||||
|
||||
--echo # ANALYZE UPDATE will make updates:
|
||||
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);
|
||||
select * from t1;
|
||||
drop table t1;
|
||||
|
||||
drop table t0;
|
Loading…
Add table
Reference in a new issue