首页 > 解决方案 > mysql 中的 row_number() 没有像我预期的那样返回 id

问题描述

我在 mysql 中制作相当于 row_number 的问题。这是我的代码:

  SELECT
    @row_number:=CASE
        WHEN @facebookv = a.facebook THEN @row_number:= @row_number + 1
        ELSE @row_number:=1
    END AS num,
   @facebookv:=a.facebook as denumire_facebook,
    a.Keyword,
    sum(a.Sales) as Sales
FROM
    ams_prod a , (SELECT @row_number:=0,@facebookv='') AS t
    group by a.facebook,a.Keyword
    having sum(a.Sales)>0
ORDER BY a.facebook;

所以问题是它为相同的“facebook”列值返回了相同的“num”,例如:

在此处输入图像描述

不,它们没有加倍,它们只是重复了几次。知道为什么会这样吗?谢谢!

标签: mysqlrow-number

解决方案


推荐阅读