美文网首页
mysql 实现 sql row_number() over

mysql 实现 sql row_number() over

作者: 领悟悟悟 | 来源:发表于2017-12-26 19:17 被阅读0次

创建临时表:临时表在数据库连接期间有效

  set @num:=0,@ptype:='',@stype='';
  DROP TABLE
  IF EXISTS `tmp_result`;
  create TEMPORARY table tmp_result
  select n.*,
        @num := if(@ptype=product_name and @stype=store_number ,@num+1,1) as rank,
        @ptype := n.product_name as pname,
        @stype := n.store_number as snumber
  from noodle as n
  where receipt_number>0
  order by product_name,store_number,order_time asc

  select *
  from tmp_result
数据表.png

要求:
求每个类别下,成员数量最多的100个(每个类别的前一百名)


结果.png

相关文章

网友评论

      本文标题:mysql 实现 sql row_number() over

      本文链接:https://www.haomeiwen.com/subject/mytsgxtx.html