Mysql中@變量用法
先看一個典型示例:
select (@i:=@i+1) as rownum, surname, personal_name from student, (select @i:=0) as init;
解析:
我們再回顧一下Sql語句執行順序
<SELECT clause> [<FROM clause>] [<WHERE clause>] [<GROUP BY clause>] [<HAVING clause>] [<ORDER BY clause>] [<LIMIT clause>]
from>on>join>where>group by>having>select>distinct>order by>top
因此只要對編程稍微有所了解的人,應該不難看出上述@用法也是基本相同的,先聲明賦值,再使用
select @i:=0
這里就是先聲明@i這個變量,並且初始化值為0
@i:=@i+1
這里就是使用這個值,變量@i進行自增,等同於c里的i+=1