mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Fix bug#11709 View was ordered by wrong column.
When searching column to sort on, item was compared to field under view column, but not the column itself. Because names of view column and underlaid field may differ, it leads to possibly choosing wrong column for sorting on. This patch makes Item_direct_view_ref::eq(Item *item,...) compare item's name with it's own name proir to comparing to *ref item. sql/item.cc: Fix bug #11709 View was ordered by wrong column sql/item.h: Fix bug #11709 View was ordered by wrong column mysql-test/t/view.test: Test case for bug #11709 View was ordered by wrong column. mysql-test/r/view.result: Test case for bug #11709 View was ordered by wrong column.
This commit is contained in:
@ -1940,3 +1940,12 @@ s1 s2
|
||||
DROP PROCEDURE p1;
|
||||
DROP VIEW v1;
|
||||
DROP TABLE t1;
|
||||
create table t1 (f1 int, f2 int);
|
||||
create view v1 as select f1 as f3, f2 as f1 from t1;
|
||||
insert into t1 values (1,3),(2,1),(3,2);
|
||||
select * from v1 order by f1;
|
||||
f3 f1
|
||||
2 1
|
||||
3 2
|
||||
1 3
|
||||
drop table t1;
|
||||
|
@ -1778,3 +1778,12 @@ CALL p1();
|
||||
DROP PROCEDURE p1;
|
||||
DROP VIEW v1;
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Test for bug #11709 View was ordered by wrong column
|
||||
#
|
||||
create table t1 (f1 int, f2 int);
|
||||
create view v1 as select f1 as f3, f2 as f1 from t1;
|
||||
insert into t1 values (1,3),(2,1),(3,2);
|
||||
select * from v1 order by f1;
|
||||
drop table t1;
|
||||
|
Reference in New Issue
Block a user