会话变量在IF中循环

时间:2013-11-11 11:08:52

标签: mysql session-variables

这是什么意思? 我无法理解语法。

SELECT if(@s, @s:=@s+1, @s:=1) as rownum, user_id, operation FROM users_list

1 个答案:

答案 0 :(得分:1)

这会在第一条记录中初始化一个变量@s 1,并为后续每一行添加1。这是一种排名机制,用于动态获取选择中每条记录的行号。

结果可能如下所示

rownum  |  user_id  | operation
1       |  1        | 'delete'
2       |  4        | 'add'
3       |  2        | 'create'
4       |  2        | 'delete'