summaryrefslogtreecommitdiff
path: root/mysql-test/r/user_var.result
blob: 5643900182ed725454cc68874dd422cea0892e57 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
set @a := foo;
Unknown column 'foo' in 'field list'
set @a := connection_id() + 3;
select @a - connection_id();
@a - connection_id()
3
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;
i
1
2
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;
i	@vv1:=if(sv1.i,1,0)	@vv2:=if(sv2.i,1,0)	@vv3:=if(sv3.i,1,0)	@vv1+@vv2+@vv3
1	1	0	1	2
2	1	0	0	1
explain select * from t1 where i=@vv1;
table	type	possible_keys	key	key_len	ref	rows	Extra
t1	ref	i	i	4	const	1	where used
explain select * from t1 where @vv1:=@vv1+1 and i=@vv1;
table	type	possible_keys	key	key_len	ref	rows	Extra
t1	ALL	NULL	NULL	NULL	NULL	3	where used
explain select @vv1:=i from t1 where i=@vv1;
table	type	possible_keys	key	key_len	ref	rows	Extra
t1	index	NULL	i	4	NULL	3	where used; Using index
explain select * from t1 where i=@vv1;
table	type	possible_keys	key	key_len	ref	rows	Extra
t1	ref	i	i	4	const	1	where used
drop table t1,t2;