Loading mysql-test/r/view.result +39 −0 Original line number Diff line number Diff line Loading @@ -3078,4 +3078,43 @@ b 2 DROP VIEW v1; DROP TABLE t1,t2; create table t1(f1 int, f2 int); insert into t1 values(1,2),(1,3),(1,1),(2,3),(2,1),(2,2); select * from t1; f1 f2 1 2 1 3 1 1 2 3 2 1 2 2 create view v1 as select * from t1 order by f2; select * from v1; f1 f2 1 1 2 1 1 2 2 2 1 3 2 3 explain extended select * from v1; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using filesort Warnings: Note 1003 select `test`.`t1`.`f1` AS `f1`,`test`.`t1`.`f2` AS `f2` from `test`.`t1` order by `test`.`t1`.`f2` select * from v1 order by f1; f1 f2 1 1 1 2 1 3 2 1 2 2 2 3 explain extended select * from v1 order by f1; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using filesort Warnings: Note 1003 select `test`.`t1`.`f1` AS `f1`,`test`.`t1`.`f2` AS `f2` from `test`.`t1` order by `test`.`t1`.`f1`,`test`.`t1`.`f2` drop view v1; drop table t1; End of 5.0 tests. mysql-test/t/view.test +14 −0 Original line number Diff line number Diff line Loading @@ -3024,4 +3024,18 @@ SELECT * FROM t2; DROP VIEW v1; DROP TABLE t1,t2; # # Bug#12122: Views with ORDER BY can't be resolved using MERGE algorithm. # create table t1(f1 int, f2 int); insert into t1 values(1,2),(1,3),(1,1),(2,3),(2,1),(2,2); select * from t1; create view v1 as select * from t1 order by f2; select * from v1; explain extended select * from v1; select * from v1 order by f1; explain extended select * from v1 order by f1; drop view v1; drop table t1; --echo End of 5.0 tests. sql/sql_lex.cc +0 −1 Original line number Diff line number Diff line Loading @@ -1751,7 +1751,6 @@ bool st_lex::can_be_merged() } return (selects_allow_merge && select_lex.order_list.elements == 0 && select_lex.group_list.elements == 0 && select_lex.having == 0 && select_lex.with_sum_func == 0 && Loading Loading
mysql-test/r/view.result +39 −0 Original line number Diff line number Diff line Loading @@ -3078,4 +3078,43 @@ b 2 DROP VIEW v1; DROP TABLE t1,t2; create table t1(f1 int, f2 int); insert into t1 values(1,2),(1,3),(1,1),(2,3),(2,1),(2,2); select * from t1; f1 f2 1 2 1 3 1 1 2 3 2 1 2 2 create view v1 as select * from t1 order by f2; select * from v1; f1 f2 1 1 2 1 1 2 2 2 1 3 2 3 explain extended select * from v1; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using filesort Warnings: Note 1003 select `test`.`t1`.`f1` AS `f1`,`test`.`t1`.`f2` AS `f2` from `test`.`t1` order by `test`.`t1`.`f2` select * from v1 order by f1; f1 f2 1 1 1 2 1 3 2 1 2 2 2 3 explain extended select * from v1 order by f1; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using filesort Warnings: Note 1003 select `test`.`t1`.`f1` AS `f1`,`test`.`t1`.`f2` AS `f2` from `test`.`t1` order by `test`.`t1`.`f1`,`test`.`t1`.`f2` drop view v1; drop table t1; End of 5.0 tests.
mysql-test/t/view.test +14 −0 Original line number Diff line number Diff line Loading @@ -3024,4 +3024,18 @@ SELECT * FROM t2; DROP VIEW v1; DROP TABLE t1,t2; # # Bug#12122: Views with ORDER BY can't be resolved using MERGE algorithm. # create table t1(f1 int, f2 int); insert into t1 values(1,2),(1,3),(1,1),(2,3),(2,1),(2,2); select * from t1; create view v1 as select * from t1 order by f2; select * from v1; explain extended select * from v1; select * from v1 order by f1; explain extended select * from v1 order by f1; drop view v1; drop table t1; --echo End of 5.0 tests.
sql/sql_lex.cc +0 −1 Original line number Diff line number Diff line Loading @@ -1751,7 +1751,6 @@ bool st_lex::can_be_merged() } return (selects_allow_merge && select_lex.order_list.elements == 0 && select_lex.group_list.elements == 0 && select_lex.having == 0 && select_lex.with_sum_func == 0 && Loading