mysql-test/r/subselect.result:
  appropriate test result
mysql-test/t/subselect.test:
  test case
sql/item.cc:
  we can get NULL here if the field isn't unique
This commit is contained in:
unknown 2004-03-18 16:49:48 +04:00
parent 8bdbfee96b
commit 257d8ede4b
3 changed files with 16 additions and 0 deletions

View file

@ -1701,3 +1701,8 @@ id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY NULL NULL NULL NULL NULL NULL NULL No tables used
2 UNCACHEABLE SUBQUERY t1 system NULL NULL NULL NULL 1
drop table t1;
create table t1(id int);
create table t2(id int);
create table t3(flag int);
select (select * from t3 where id not null) from t1, t2;
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'null) from t1, t2' at line 1

View file

@ -1105,3 +1105,12 @@ create table t1 (a int);
insert into t1 values (1);
explain select benchmark(1000, (select a from t1 where a=sha(rand())));
drop table t1;
#
# bug 3188
#
create table t1(id int);
create table t2(id int);
create table t3(flag int);
-- error 1064
select (select * from t3 where id not null) from t1, t2;

View file

@ -893,6 +893,8 @@ bool Item_field::fix_fields(THD *thd, TABLE_LIST *tables, Item **ref)
table_list, &where,
0)) != not_found_field)
{
if (!tmp)
return -1;
prev_subselect_item->used_tables_cache|= tmp->table->map;
prev_subselect_item->const_item_cache= 0;
break;