user_var.result
上传用户:romrleung
上传日期:2022-05-23
资源大小:18897k
文件大小:5k
源码类别:

MySQL数据库

开发平台:

Visual C++

  1. drop table if exists t1,t2;
  2. set @a := foo;
  3. ERROR 42S22: Unknown column 'foo' in 'field list'
  4. set @a := connection_id() + 3;
  5. select @a - connection_id();
  6. @a - connection_id()
  7. 3
  8. set @b := 1;
  9. select @b;
  10. @b
  11. 1
  12. CREATE TABLE t1 ( i int not null, v int not null,index (i));
  13. insert into t1 values (1,1),(1,3),(2,1);
  14. create table t2 (i int not null, unique (i));
  15. insert into t2 select distinct i from t1;
  16. select * from t2;
  17. i
  18. 1
  19. 2
  20. 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;
  21. i @vv1:=if(sv1.i,1,0) @vv2:=if(sv2.i,1,0) @vv3:=if(sv3.i,1,0) @vv1+@vv2+@vv3
  22. 1 1 0 1 2
  23. 2 1 0 0 1
  24. explain select * from t1 where i=@vv1;
  25. id select_type table type possible_keys key key_len ref rows Extra
  26. 1 SIMPLE t1 ref i i 4 const 1 Using where
  27. explain select * from t1 where @vv1:=@vv1+1 and i=@vv1;
  28. id select_type table type possible_keys key key_len ref rows Extra
  29. 1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where
  30. explain select @vv1:=i from t1 where i=@vv1;
  31. id select_type table type possible_keys key key_len ref rows Extra
  32. 1 SIMPLE t1 index NULL i 4 NULL 3 Using where; Using index
  33. explain select * from t1 where i=@vv1;
  34. id select_type table type possible_keys key key_len ref rows Extra
  35. 1 SIMPLE t1 ref i i 4 const 1 Using where
  36. drop table t1,t2;
  37. set @a=0,@b=0;
  38. select @a:=10,   @b:=1,   @a > @b, @a < @b;
  39. @a:=10 @b:=1 @a > @b @a < @b
  40. 10 1 1 0
  41. select @a:="10", @b:="1", @a > @b, @a < @b;
  42. @a:="10" @b:="1" @a > @b @a < @b
  43. 10 1 1 0
  44. select @a:=10,   @b:=2,   @a > @b, @a < @b;
  45. @a:=10 @b:=2 @a > @b @a < @b
  46. 10 2 0 1
  47. select @a:="10", @b:="2", @a > @b, @a < @b;
  48. @a:="10" @b:="2" @a > @b @a < @b
  49. 10 2 1 0
  50. select @a:=1;
  51. @a:=1
  52. 1
  53. select @a, @a:=1;
  54. @a @a:=1
  55. 1 1
  56. create table t1 (id int, d double, c char(10));
  57. insert into t1 values (1,2.0, "test");
  58. select @c:=0;
  59. @c:=0
  60. 0
  61. update t1 SET id=(@c:=@c+1);
  62. select @c;
  63. @c
  64. 1
  65. select @c:=0;
  66. @c:=0
  67. 0
  68. update t1 set id=(@c:=@c+1);
  69. select @c;
  70. @c
  71. 1
  72. select @c:=0;
  73. @c:=0
  74. 0
  75. select @c:=@c+1;
  76. @c:=@c+1
  77. 1
  78. select @d,(@d:=id),@d from t1;
  79. @d (@d:=id) @d
  80. NULL 1 1
  81. select @e,(@e:=d),@e from t1;
  82. @e (@e:=d) @e
  83. NULL 2 2
  84. select @f,(@f:=c),@f from t1;
  85. @f (@f:=c) @f
  86. NULL test test
  87. set @g=1;
  88. select @g,(@g:=c),@g from t1;
  89. @g (@g:=c) @g
  90. 1 test test
  91. select @c, @d, @e, @f;
  92. @c @d @e @f
  93. 1 1 2 test
  94. select @d:=id, @e:=id, @f:=id, @g:=@id from t1;
  95. @d:=id @e:=id @f:=id @g:=@id
  96. 1 1 1 NULL
  97. select @c, @d, @e, @f, @g;
  98. @c @d @e @f @g
  99. 1 1 1 1 NULL
  100. drop table t1;
  101. 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;
  102. @a:=10 @b:=2 @a>@b @a:="10" @b:="2" @a>@b @a:=10 @b:=2 @a>@b @a:="10" @b:="2" @a>@b
  103. 10 2 1 10 2 1 10 2 1 10 2 1
  104. create table t1 (i int not null);
  105. insert t1 values (1),(2),(2),(3),(3),(3);
  106. select @a:=0;
  107. @a:=0
  108. 0
  109. select @a, @a:=@a+count(*), count(*), @a from t1 group by i;
  110. @a @a:=@a+count(*) count(*) @a
  111. 0 1 1 0
  112. 0 2 2 0
  113. 0 3 3 0
  114. select @a:=0;
  115. @a:=0
  116. 0
  117. select @a+0, @a:=@a+0+count(*), count(*), @a+0 from t1 group by i;
  118. @a+0 @a:=@a+0+count(*) count(*) @a+0
  119. 0 1 1 0
  120. 1 3 2 0
  121. 3 6 3 0
  122. drop table t1;
  123. set @a=_latin2'test';
  124. select charset(@a),collation(@a),coercibility(@a);
  125. charset(@a) collation(@a) coercibility(@a)
  126. latin2 latin2_general_ci 2
  127. select @a=_latin2'TEST';
  128. @a=_latin2'TEST'
  129. 1
  130. select @a=_latin2'TEST' collate latin2_bin;
  131. @a=_latin2'TEST' collate latin2_bin
  132. 0
  133. set @a=_latin2'test' collate latin2_general_ci;
  134. select charset(@a),collation(@a),coercibility(@a);
  135. charset(@a) collation(@a) coercibility(@a)
  136. latin2 latin2_general_ci 2
  137. select @a=_latin2'TEST';
  138. @a=_latin2'TEST'
  139. 1
  140. select @a=_latin2'TEST' collate latin2_bin;
  141. @a=_latin2'TEST' collate latin2_bin
  142. 0
  143. select charset(@a:=_latin2'test');
  144. charset(@a:=_latin2'test')
  145. latin2
  146. select collation(@a:=_latin2'test');
  147. collation(@a:=_latin2'test')
  148. latin2_general_ci
  149. select coercibility(@a:=_latin2'test');
  150. coercibility(@a:=_latin2'test')
  151. 2
  152. select collation(@a:=_latin2'test' collate latin2_bin);
  153. collation(@a:=_latin2'test' collate latin2_bin)
  154. latin2_bin
  155. select coercibility(@a:=_latin2'test' collate latin2_bin);
  156. coercibility(@a:=_latin2'test' collate latin2_bin)
  157. 2
  158. select (@a:=_latin2'test' collate latin2_bin) = _latin2'TEST';
  159. (@a:=_latin2'test' collate latin2_bin) = _latin2'TEST'
  160. 0
  161. select charset(@a),collation(@a),coercibility(@a);
  162. charset(@a) collation(@a) coercibility(@a)
  163. latin2 latin2_bin 2
  164. select (@a:=_latin2'test' collate latin2_bin) = _latin2'TEST' collate latin2_general_ci;
  165. (@a:=_latin2'test' collate latin2_bin) = _latin2'TEST' collate latin2_general_ci
  166. 1
  167. set @var= NULL ;
  168. select FIELD( @var,'1it','Hit') as my_column;
  169. my_column
  170. 0
  171. select @v, coercibility(@v);
  172. @v coercibility(@v)
  173. NULL 2
  174. set @v1=null, @v2=1, @v3=1.1, @v4=now();
  175. select coercibility(@v1),coercibility(@v2),coercibility(@v3),coercibility(@v4);
  176. coercibility(@v1) coercibility(@v2) coercibility(@v3) coercibility(@v4)
  177. 2 2 2 2
  178. set session @honk=99;
  179. 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 1
  180. set one_shot @honk=99;
  181. ERROR HY000: The SET ONE_SHOT syntax is reserved for purposes internal to the MySQL server
  182. select @@local.max_allowed_packet;
  183. @@local.max_allowed_packet
  184. #
  185. select @@session.max_allowed_packet;
  186. @@session.max_allowed_packet
  187. #
  188. select @@global.max_allowed_packet;
  189. @@global.max_allowed_packet
  190. #
  191. select @@max_allowed_packet;
  192. @@max_allowed_packet
  193. #
  194. select @@Max_Allowed_Packet;
  195. @@Max_Allowed_Packet
  196. #
  197. select @@version;
  198. @@version
  199. #
  200. select @@global.version;
  201. @@global.version
  202. #
  203. select @@session.VERSION;
  204. @@session.VERSION
  205. #