user 水果 费用
user1 香蕉 60
user1 苹果 1981
user1 西瓜 4080
user1 苹果 622
user2 香蕉 122246
user2 苹果 369
user2 西瓜 57362
user3 香蕉 463
user3 西瓜 11382
user3 苹果 966
我现在用了一个函数来解决这个问题,语句如下:
SELECT
*,@rownum :=@rownum + 1 AS rownum,IF (
@pa = ff.user ,@number :=@number + 1 ,@number := 1
) AS number ,@pa := ff.user
FROM test ff,
(
SELECT
@number := 0 ,@rownum := 0 ,@pa = NULL
) tt
功能是可以实现 ,但有一个问题,就是按user的不同用户来排序时,第一次使用时总是给排成全是1 的,这个就不是我想要的结果了。只有在语句上做一下回车或是空格改动后才能出现正确排序的结果。这个问题困扰我很久了,不知道怎么可以避免这个问题,一次就能出现我要的结果。请求指点解决,多谢多谢!