summaryrefslogtreecommitdiff
path: root/mysql-test
diff options
context:
space:
mode:
authorunknown <monty@hundin.mysql.fi>2001-11-29 15:34:37 +0200
committerunknown <monty@hundin.mysql.fi>2001-11-29 15:34:37 +0200
commitace649189d566532a46ff110db15ccde117ce4af (patch)
tree5278a62187996e3ff76046ee3a27680bcadfc05f /mysql-test
parent00d80ffff1da7a19489a1aaab9ba29ded55b84ad (diff)
downloadmariadb-git-ace649189d566532a46ff110db15ccde117ce4af.tar.gz
Better optimization for InnoDB and BDB tables for ORDER BY
Build-tools/Do-compile: Merge with 4.0 Docs/manual.texi: Changelog mysql-test/r/innodb.result: New tests cases for ORDER BY mysql-test/r/myisam.result: New tests cases for ORDER BY mysql-test/t/innodb.test: New tests cases for ORDER BY mysql-test/t/myisam.test: New tests cases for ORDER BY
Diffstat (limited to 'mysql-test')
-rw-r--r--mysql-test/r/innodb.result16
-rw-r--r--mysql-test/r/myisam.result16
-rw-r--r--mysql-test/t/innodb.test16
-rw-r--r--mysql-test/t/myisam.test16
4 files changed, 64 insertions, 0 deletions
diff --git a/mysql-test/r/innodb.result b/mysql-test/r/innodb.result
index fddfbfccd33..333bbc45196 100644
--- a/mysql-test/r/innodb.result
+++ b/mysql-test/r/innodb.result
@@ -483,3 +483,19 @@ id name value uid
1 one one value 101
3 three three value 103
6 two other value 102
+table type possible_keys key key_len ref rows Extra
+t1 index NULL PRIMARY 4 NULL 4
+table type possible_keys key key_len ref rows Extra
+t1 index NULL b 4 NULL 4
+table type possible_keys key key_len ref rows Extra
+t1 ALL NULL NULL NULL NULL 4 Using filesort
+table type possible_keys key key_len ref rows Extra
+t1 index NULL PRIMARY 4 NULL 4 Using index
+table type possible_keys key key_len ref rows Extra
+t1 index NULL b 4 NULL 4 Using index
+table type possible_keys key key_len ref rows Extra
+t1 index NULL b 4 NULL 4 Using index
+table type possible_keys key key_len ref rows Extra
+t1 index NULL b 4 NULL 4 Using index
+table type possible_keys key key_len ref rows Extra
+t1 ALL NULL NULL NULL NULL 4
diff --git a/mysql-test/r/myisam.result b/mysql-test/r/myisam.result
index 143802a4d05..a8f97c57d33 100644
--- a/mysql-test/r/myisam.result
+++ b/mysql-test/r/myisam.result
@@ -20,3 +20,19 @@ test.t1 optimize status Table is already up to date
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Comment
t1 0 PRIMARY 1 a A 5 NULL NULL
t1 1 b 1 b A 1 NULL NULL
+table type possible_keys key key_len ref rows Extra
+t1 ALL NULL NULL NULL NULL 4 Using filesort
+table type possible_keys key key_len ref rows Extra
+t1 ALL NULL NULL NULL NULL 4 Using filesort
+table type possible_keys key key_len ref rows Extra
+t1 ALL NULL NULL NULL NULL 4 Using filesort
+table type possible_keys key key_len ref rows Extra
+t1 index NULL PRIMARY 4 NULL 4 Using index
+table type possible_keys key key_len ref rows Extra
+t1 index NULL b 4 NULL 4 Using index
+table type possible_keys key key_len ref rows Extra
+t1 ALL NULL NULL NULL NULL 4 Using filesort
+table type possible_keys key key_len ref rows Extra
+t1 ALL NULL NULL NULL NULL 4
+table type possible_keys key key_len ref rows Extra
+t1 ALL NULL NULL NULL NULL 4
diff --git a/mysql-test/t/innodb.test b/mysql-test/t/innodb.test
index 1f646828324..f0e9f8cf72f 100644
--- a/mysql-test/t/innodb.test
+++ b/mysql-test/t/innodb.test
@@ -513,3 +513,19 @@ set insert_id=6;
replace into t1 (value,name,uid) values ('other value','two',102);
select * from t1;
drop table t1;
+
+#
+# Test of how ORDER BY works when doing it on the whole table
+#
+
+create table t1 (a int not null, b int not null, c int not null, primary key (a),key(b)) type=innodb;
+insert into t1 values (3,3,3),(1,1,1),(2,2,2),(4,4,4);
+explain select * from t1 order by a;
+explain select * from t1 order by b;
+explain select * from t1 order by c;
+explain select a from t1 order by a;
+explain select b from t1 order by b;
+explain select a,b from t1 order by b;
+explain select a,b from t1;
+explain select a,b,c from t1;
+drop table t1;
diff --git a/mysql-test/t/myisam.test b/mysql-test/t/myisam.test
index 5b483b969bc..eb1d9a01020 100644
--- a/mysql-test/t/myisam.test
+++ b/mysql-test/t/myisam.test
@@ -48,3 +48,19 @@ show index from t1;
optimize table t1;
show index from t1;
drop table t1;
+
+#
+# Test of how ORDER BY works when doing it on the whole table
+#
+
+create table t1 (a int not null, b int not null, c int not null, primary key (a),key(b)) type=myisam;
+insert into t1 values (3,3,3),(1,1,1),(2,2,2),(4,4,4);
+explain select * from t1 order by a;
+explain select * from t1 order by b;
+explain select * from t1 order by c;
+explain select a from t1 order by a;
+explain select b from t1 order by b;
+explain select a,b from t1 order by b;
+explain select a,b from t1;
+explain select a,b,c from t1;
+drop table t1;