90 lines
2.2 KiB
Plaintext
90 lines
2.2 KiB
Plaintext
--disable_query_log
|
|
set @@session.explicit_defaults_for_timestamp=off;
|
|
--enable_query_log
|
|
#### owner: yuchen.wyc
|
|
#### owner group: sql3
|
|
#### description: 用于测试NULL上的索引相关
|
|
--disable_warnings
|
|
drop table if exists t1;
|
|
--enable_warnings
|
|
|
|
CREATE TABLE t1
|
|
(
|
|
pk1 INT primary key,
|
|
key1 INT,
|
|
key2 VARCHAR(20),
|
|
key3 VARCHAR(20)
|
|
);
|
|
|
|
insert into t1 values(1,12,'a','a1'),(2,11,'a','b1'),(3,10,'b','b1'),(4,9,'c','c1'),
|
|
(5,8,NULL,'d1'),(6,7,NULL,'b1'),(7,6,NULL,'b1'),
|
|
(8,5,'a',NULL),(9,4,'a',NULL),(10,3,NULL,NULL),
|
|
(11,2,'',NULL),(12,1,NULL,'');
|
|
|
|
create index i1 on t1(key2,key3);
|
|
|
|
let $index_name=__idx_3003_i1;
|
|
--source mysql_test/include/check_all_idx_ok.inc
|
|
|
|
##
|
|
select * from t1 where key2='a' and key3=NULL;
|
|
select pk1 from t1 where key2='a' and key3=NULL;
|
|
|
|
##
|
|
select * from t1 where key2='a' and key3>NULL;
|
|
select pk1 from t1 where key2='a' and key3>NULL;
|
|
|
|
##
|
|
select * from t1 where key2='a' and key3<NULL;
|
|
select pk1 from t1 where key2='a' and key3<NULL;
|
|
|
|
##
|
|
select * from t1 where key2='a' and key3>=NULL;
|
|
select pk1 from t1 where key2='a' and key3>=NULL;
|
|
|
|
##
|
|
select * from t1 where key2='a' and key3<=NULL;
|
|
select pk1 from t1 where key2='a' and key3<=NULL;
|
|
|
|
##
|
|
select * from t1 where key2=NULL and key3='b1';
|
|
select pk1 from t1 where key2=NULL and key3='b1';
|
|
|
|
##
|
|
select * from t1 where key2>NULL and key3='b1';
|
|
select pk1 from t1 where key2>NULL and key3='b1';
|
|
|
|
##
|
|
select * from t1 where key2<NULL and key3='b1';
|
|
select pk1 from t1 where key2<NULL and key3='b1';
|
|
|
|
##
|
|
select * from t1 where key2>=NULL and key3='b1';
|
|
select pk1 from t1 where key2>=NULL and key3='b1';
|
|
|
|
##
|
|
select * from t1 where key2<=NULL and key3='b1';
|
|
select pk1 from t1 where key2<=NULL and key3='b1';
|
|
|
|
##
|
|
select * from t1 where key2=NULL and key3=NULL;
|
|
select pk1 from t1 where key2=NULL and key3=NULL;
|
|
|
|
##
|
|
select * from t1 where key2=NULL and key3<NULL;
|
|
select pk1 from t1 where key2=NULL and key3<NULL;
|
|
|
|
##
|
|
select * from t1 where key2=NULL and key3>NULL;
|
|
select pk1 from t1 where key2=NULL and key3>NULL;
|
|
|
|
##
|
|
select * from t1 where key2=NULL and key3<=NULL;
|
|
select pk1 from t1 where key2=NULL and key3<=NULL;
|
|
|
|
##
|
|
select * from t1 where key2=NULL and key3>=NULL;
|
|
select pk1 from t1 where key2=NULL and key3>=NULL;
|
|
|
|
|