From 55718d0f07fa0b063a4b1b2b95b42eda51866d42 Mon Sep 17 00:00:00 2001 From: "bell@sanja.is.com.ua" <> Date: Tue, 28 May 2002 20:49:17 +0300 Subject: [PATCH] derived table with * bug fixed --- mysql-test/r/derived.result | 4 ++++ mysql-test/t/derived.test | 1 + sql/sql_derived.cc | 2 +- 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/mysql-test/r/derived.result b/mysql-test/r/derived.result index 822993a7bf2..e05be96c6b7 100644 --- a/mysql-test/r/derived.result +++ b/mysql-test/r/derived.result @@ -7,6 +7,10 @@ select t1.a,t3.y from t1,(select a as y from t2 where b='c') as t3 where t1.a a y 3 3 3 3 +select t1.a,t3.a from t1,(select * from t2 where b='c') as t3 where t1.a = t3.a; +a a +3 3 +3 3 CREATE TABLE t3 (a int not null, b char (10) not null); insert into t3 values (3,'f'),(4,'y'),(5,'z'),(6,'c'); select t1.a,t4.y from t1,(select t2.a as y from t2,(select t3.b from t3 where t3.a>3) as t5 where t2.b=t5.b) as t4 where t1.a = t4.y; diff --git a/mysql-test/t/derived.test b/mysql-test/t/derived.test index c5f57007e54..76ef5fba351 100644 --- a/mysql-test/t/derived.test +++ b/mysql-test/t/derived.test @@ -4,6 +4,7 @@ insert into t1 values(1,'a'),(2,'b'),(3,'c'),(3,'c'); CREATE TABLE t2 (a int not null, b char (10) not null); insert into t2 values (3,'c'),(4,'d'),(5,'f'),(6,'e'); select t1.a,t3.y from t1,(select a as y from t2 where b='c') as t3 where t1.a = t3.y; +select t1.a,t3.a from t1,(select * from t2 where b='c') as t3 where t1.a = t3.a; CREATE TABLE t3 (a int not null, b char (10) not null); insert into t3 values (3,'f'),(4,'y'),(5,'z'),(6,'c'); select t1.a,t4.y from t1,(select t2.a as y from t2,(select t3.b from t3 where t3.a>3) as t5 where t2.b=t5.b) as t4 where t1.a = t4.y; diff --git a/sql/sql_derived.cc b/sql/sql_derived.cc index f1b60dd9b84..af43c5dcd96 100644 --- a/sql/sql_derived.cc +++ b/sql/sql_derived.cc @@ -71,7 +71,7 @@ int mysql_derived(THD *thd, LEX *lex,SELECT_LEX *s, TABLE_LIST *t) } bzero((char*) &tmp_table_param,sizeof(tmp_table_param)); tmp_table_param.field_count=item_list.elements; - if (!(table=create_tmp_table(thd, &tmp_table_param, sl->item_list, + if (!(table=create_tmp_table(thd, &tmp_table_param, item_list, (ORDER*) 0, 0, 1, 0, (sl->options | thd->options | TMP_TABLE_ALL_COLUMNS)))) {