mirror of
				https://github.com/MariaDB/server.git
				synced 2025-11-03 14:33:32 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			26 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			26 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
error 1054;
 | 
						|
set @a := foo;
 | 
						|
set @a := connection_id() + 3;
 | 
						|
select @a - connection_id();
 | 
						|
 | 
						|
# Check using and setting variables with SELECT DISTINCT
 | 
						|
 | 
						|
drop table if exists t1,t2;
 | 
						|
CREATE TABLE t1 ( i int not null, v int not null,index (i));
 | 
						|
insert into t1 values (1,1),(1,3),(2,1); 
 | 
						|
create table t2 (i int not null, unique (i));
 | 
						|
insert into t2 select distinct i from t1;
 | 
						|
select * from t2; 
 | 
						|
select distinct t2.i,@vv1:=if(sv1.i,1,0),@vv2:=if(sv2.i,1,0),@vv3:=if(sv3.i,1,0), @vv1+@vv2+@vv3 from t2 left join t1 as sv1 on sv1.i=t2.i and sv1.v=1 left join t1 as sv2 on sv2.i=t2.i and sv2.v=2 left join t1 as sv3 on sv3.i=t2.i and sv3.v=3;
 | 
						|
explain select * from t1 where i=@vv1;
 | 
						|
explain select * from t1 where @vv1:=@vv1+1 and i=@vv1;
 | 
						|
explain select @vv1:=i from t1 where i=@vv1;
 | 
						|
explain select * from t1 where i=@vv1;
 | 
						|
drop table t1,t2;
 | 
						|
 | 
						|
# Check types of variables
 | 
						|
select @a:=10,   @b:=1,   @a > @b, @a < @b;
 | 
						|
select @a:="10", @b:="1", @a > @b, @a < @b;
 | 
						|
select @a:=10,   @b:=2,   @a > @b, @a < @b;
 | 
						|
select @a:="10", @b:="2", @a > @b, @a < @b;
 |