SELECT (@i:=@i+1) 序号,code FROM stu,(SELECT @i:=0) t
效果如下:
@i为mysql中变量的声明方式
:=为变量的赋值方式(当使用set赋值时也可以使用=,但使用select只能使用:=以区分=的比较功能)
from后面的(SELECT @i:=0) t是为了每次查询都使变量从0开始(序号从1开始),使变量归零重置;若不加,则下次查询的序号会在本次查询的基础上累加,而不会重新从1开始编号,效果如下:
t是(SELECT @i:=0)的别名,因为派生表必须有别名