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;
 | 
						|
 | 
						|
 |