Mysql定义变量实现(按某个字段值)排名

it2022-05-05  148

 1、eg:

SELECT u.rank      FROM      (          SELECT zc.fk_user_id,es.shop_type,(@ranknum:=@ranknum+1) AS rank          FROM zsm_credit zc         LEFT JOIN es_shop es  ON  zc.fk_user_id = es.user_id ,        (SELECT (@ranknum :=0) ) b                 ORDER BY total DESC       )u      WHERE u.fk_user_id='1' AND u.shop_type=1

2、mysql在sql中定义变量的方式

set @a = 1;set @a: = 1; select @num:=value;

3、利用变量赋值

set @name = ''; select @name:=password from user limit 0,1;#从数据表中获取一条记录password字段的值给@name变量。在执行后输出到查询结果集上面。

对用户变量赋值有两种方式,一种是直接用”=”号,另一种是用”:=”号。其区别在于使用set命令对用户变量进行赋值时,两种方式都可以使用;当使用select语句对用户变量进行赋值时,只能使用”:=”方式,因为在select语句中,”=”号declare语句专门用于定义局部变量。set语句是设置不同类型的变量,包括会话变量和全局变量。

 

关注公众号,回复c+兴趣的东西  24小时内即可领取学习。2T资料任君挑选!

    

转载于:https://www.cnblogs.com/wwwcf1982603555/p/9045872.html

相关资源:各显卡算力对照表!

最新回复(0)