Mysql中@变量用法

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

原文地址:https://www.cnblogs.com/gambler/p/13041625.html