📄 user_var.result
字号:
drop table if exists t1,t2;set @a := foo;ERROR 42S22: Unknown column 'foo' in 'field list'set @a := connection_id() + 3;select @a - connection_id();@a - connection_id()3set @b := 1;select @b;@b1CREATE 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;i12select 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+@vv31 1 0 1 22 1 0 0 1explain select * from t1 where i=@vv1;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t1 ref i i 4 const 1 select @vv1,i,v from t1 where i=@vv1;@vv1 i v1 1 11 1 3explain select * from t1 where @vv1:=@vv1+1 and i=@vv1;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using whereexplain select @vv1:=i from t1 where i=@vv1;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t1 index NULL i 4 NULL 3 Using where; Using indexexplain select * from t1 where i=@vv1;id select_type table type possible_keys key key_len ref rows Extra1 SIMPLE t1 ref i i 4 const 1 drop table t1,t2;set @a=0,@b=0;select @a:=10, @b:=1, @a > @b, @a < @b;@a:=10 @b:=1 @a > @b @a < @b10 1 1 0select @a:="10", @b:="1", @a > @b, @a < @b;@a:="10" @b:="1" @a > @b @a < @b10 1 1 0select @a:=10, @b:=2, @a > @b, @a < @b;@a:=10 @b:=2 @a > @b @a < @b10 2 0 1select @a:="10", @b:="2", @a > @b, @a < @b;@a:="10" @b:="2" @a > @b @a < @b10 2 1 0select @a:=1;@a:=11select @a, @a:=1;@a @a:=11 1create table t1 (id int, d double, c char(10));insert into t1 values (1,2.0, "test");select @c:=0;@c:=00update t1 SET id=(@c:=@c+1);select @c;@c1select @c:=0;@c:=00update t1 set id=(@c:=@c+1);select @c;@c1select @c:=0;@c:=00select @c:=@c+1;@c:=@c+11select @d,(@d:=id),@d from t1;@d (@d:=id) @dNULL 1 1select @e,(@e:=d),@e from t1;@e (@e:=d) @eNULL 2 2select @f,(@f:=c),@f from t1;@f (@f:=c) @fNULL test testset @g=1;select @g,(@g:=c),@g from t1;@g (@g:=c) @g1 test testselect @c, @d, @e, @f;@c @d @e @f1 1 2 testselect @d:=id, @e:=id, @f:=id, @g:=@id from t1;@d:=id @e:=id @f:=id @g:=@id1 1 1 NULLselect @c, @d, @e, @f, @g;@c @d @e @f @g1 1 1 1 NULLdrop table t1;select @a:=10, @b:=2, @a>@b, @a:="10", @b:="2", @a>@b, @a:=10, @b:=2, @a>@b, @a:="10", @b:="2", @a>@b;@a:=10 @b:=2 @a>@b @a:="10" @b:="2" @a>@b @a:=10 @b:=2 @a>@b @a:="10" @b:="2" @a>@b10 2 1 10 2 1 10 2 1 10 2 1create table t1 (i int not null);insert t1 values (1),(2),(2),(3),(3),(3);select @a:=0;@a:=00select @a, @a:=@a+count(*), count(*), @a from t1 group by i;@a @a:=@a+count(*) count(*) @a0 1 1 00 2 2 00 3 3 0select @a:=0;@a:=00select @a+0, @a:=@a+0+count(*), count(*), @a+0 from t1 group by i;@a+0 @a:=@a+0+count(*) count(*) @a+00 1 1 01 3 2 03 6 3 0set @a=0;select @a,@a:="hello",@a,@a:=3,@a,@a:="hello again" from t1 group by i;@a @a:="hello" @a @a:=3 @a @a:="hello again"0 hello 0 3 0 hello again0 hello 0 3 0 hello again0 hello 0 3 0 hello againselect @a,@a:="hello",@a,@a:=3,@a,@a:="hello again" from t1 group by i;@a @a:="hello" @a @a:=3 @a @a:="hello again"hello again hello hello again 3 hello again hello againhello again hello hello again 3 hello again hello againhello again hello hello again 3 hello again hello againdrop table t1;set @a=_latin2'test';select charset(@a),collation(@a),coercibility(@a);charset(@a) collation(@a) coercibility(@a)latin2 latin2_general_ci 2select @a=_latin2'TEST';@a=_latin2'TEST'1select @a=_latin2'TEST' collate latin2_bin;@a=_latin2'TEST' collate latin2_bin0set @a=_latin2'test' collate latin2_general_ci;select charset(@a),collation(@a),coercibility(@a);charset(@a) collation(@a) coercibility(@a)latin2 latin2_general_ci 2select @a=_latin2'TEST';@a=_latin2'TEST'1select @a=_latin2'TEST' collate latin2_bin;@a=_latin2'TEST' collate latin2_bin0select charset(@a:=_latin2'test');charset(@a:=_latin2'test')latin2select collation(@a:=_latin2'test');collation(@a:=_latin2'test')latin2_general_ciselect coercibility(@a:=_latin2'test');coercibility(@a:=_latin2'test')2select collation(@a:=_latin2'test' collate latin2_bin);collation(@a:=_latin2'test' collate latin2_bin)latin2_binselect coercibility(@a:=_latin2'test' collate latin2_bin);coercibility(@a:=_latin2'test' collate latin2_bin)2select (@a:=_latin2'test' collate latin2_bin) = _latin2'TEST';(@a:=_latin2'test' collate latin2_bin) = _latin2'TEST'0select charset(@a),collation(@a),coercibility(@a);charset(@a) collation(@a) coercibility(@a)latin2 latin2_bin 2select (@a:=_latin2'test' collate latin2_bin) = _latin2'TEST' collate latin2_general_ci;(@a:=_latin2'test' collate latin2_bin) = _latin2'TEST' collate latin2_general_ci1set @var= NULL ;select FIELD( @var,'1it','Hit') as my_column;my_column0select @v, coercibility(@v);@v coercibility(@v)NULL 2set @v1=null, @v2=1, @v3=1.1, @v4=now();select coercibility(@v1),coercibility(@v2),coercibility(@v3),coercibility(@v4);coercibility(@v1) coercibility(@v2) coercibility(@v3) coercibility(@v4)2 2 2 2set session @honk=99;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 '@honk=99' at line 1set one_shot @honk=99;ERROR HY000: The 'SET ONE_SHOT' syntax is reserved for purposes internal to the MySQL serverselect @@local.max_allowed_packet;@@local.max_allowed_packet#select @@session.max_allowed_packet;@@session.max_allowed_packet#select @@global.max_allowed_packet;@@global.max_allowed_packet#select @@max_allowed_packet;@@max_allowed_packet#select @@Max_Allowed_Packet;@@Max_Allowed_Packet#select @@version;@@version#select @@global.version;@@global.version#select @@session.VERSION;@@session.VERSION#set @first_var= NULL;create table t1 select @first_var;show create table t1;Table Create Tablet1 CREATE TABLE `t1` ( `@first_var` longblob) ENGINE=MyISAM DEFAULT CHARSET=latin1drop table t1;set @first_var= cast(NULL as signed integer);create table t1 select @first_var;show create table t1;Table Create Tablet1 CREATE TABLE `t1` ( `@first_var` bigint(20) default NULL) ENGINE=MyISAM DEFAULT CHARSET=latin1drop table t1;set @first_var= NULL;create table t1 select @first_var;show create table t1;Table Create Tablet1 CREATE TABLE `t1` ( `@first_var` bigint(20) default NULL) ENGINE=MyISAM DEFAULT CHARSET=latin1drop table t1;set @first_var= concat(NULL);create table t1 select @first_var;show create table t1;Table Create Tablet1 CREATE TABLE `t1` ( `@first_var` longblob) ENGINE=MyISAM DEFAULT CHARSET=latin1drop table t1;set @first_var=1;set @first_var= cast(NULL as CHAR);create table t1 select @first_var;show create table t1;Table Create Tablet1 CREATE TABLE `t1` ( `@first_var` longtext) ENGINE=MyISAM DEFAULT CHARSET=latin1drop table t1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -