Mysql中(@i:=@i+1)的介绍

@i:=@i+1 表达式

生成伪列实现自增序列

语法:

select  (@i:=@i+1) as ,t.*  from  table_name t,(select @i:=0) as j

(@i:=@i+1)代表定义一个变量,每次叠加 1;

(select @i:=0) as代表建立一个临时表,j是随便取的表名,但别名一定要的。

示例:表内容如图

Mysql中(@i:=@i+1)的介绍_第1张图片

sql 语句:

SELECT `name`,score,(@i:=@i+1) as 排名
FROM demo,(SELECT @i:=0) as demo1
ORDER BY score 
DESC

结果展示:

Mysql中(@i:=@i+1)的介绍_第2张图片

 

你可能感兴趣的:(Mysql,mysql,数据库)