我在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”,如:
不,他们没有加倍,他们只是重复了几次 . 知道为什么会这样吗?谢谢!