select id,val,
@pos := if(@prev<>val,@pos+1,@pos) as pos,
@prev := val as val
from table,(select @pos:=0,@prev:='') as r order by val
Tôi đồng ý với các lời khuyên khác rằng sẽ tốt hơn nếu làm điều này ở cấp ứng dụng.
select id,val,
@pos := if(@prev<>val,@pos+1,@pos) as pos,
@prev := val as val
from table,(select @pos:=0,@prev:='') as r order by val
Tôi đồng ý với các lời khuyên khác rằng sẽ tốt hơn nếu làm điều này ở cấp ứng dụng.