不懂sql自定义变量的用法

不清楚两个括号里面的自定义变量的运行原理,第一处if里面判断完@p和id是否相等后as rank是给哪个变量取的别名。
第二处 r是哪个的别名

图片是我把整个语句精简后的

img

不要胡乱精简代码,尤其是你根本读不懂代码的情况下

提醒:@rr不是一个东西

你现在精简过后的语句根本语法都是错的