mysql> select * from en;
+------+---------+
| id   | cr_name |
+------+---------+
|    1 | 北京        |
|    2 | 广州        |
|    3 | 新疆       |
+------+---------+
3 rows in set (0.00 sec)mysql> select @a:=ifnull(@a,0)+1 from en;第一次运行
+--------------------+
| @a:=ifnull(@a,0)+1 |
+--------------------+
|                  1 |
|                  1 |
|                  1 |
+--------------------+
3 rows in set (0.00 sec)mysql> select @a:=ifnull(@a,0)+1 from en;第二次运行
+--------------------+
| @a:=ifnull(@a,0)+1 |
+--------------------+
|                  2 |
|                  3 |
|                  4 |
+--------------------+
3 rows in set (0.00 sec)mysql>
为什么第一次select的时候会否返回1;这个很令人费解;
我觉得应该是返回1 2 3..不知道为什么这样;难道是数字或是字符串的原因?
先去洗个头,等结果;