Mysql,不同计数器

Mysql,不同计数器,mysql,mysqli,Mysql,Mysqli,桌子 我需要这样的结果 id Company Name Price 1 xxx namea 1 2 xxx nameh 1.1 3 xxx nameg 2 4 yyy namef 1.5 5 zzz named 1.7 6 zzz names 0.9 正如你们所看到的,我们为公司计算数字,它应该为分页正常工作。这意味着,如果我们在第二页的每一页上都有x2个条目,那么第

桌子

我需要这样的结果

id  Company  Name   Price
1   xxx      namea    1
2   xxx      nameh    1.1
3   xxx      nameg    2
4   yyy      namef    1.5
5   zzz      named    1.7
6   zzz      names    0.9
正如你们所看到的,我们为公司计算数字,它应该为分页正常工作。这意味着,如果我们在第二页的每一页上都有x2个条目,那么第三页上就会有数据计数器1和2,只有3个

问题出在数据计数器中,因为它应该在每一页上再次计数。按“公司ASC、名称ASC、价格ASC”订购

我应该如何为此创建查询?

这将按公司计算排名()

dCounter   Company  Name   Price
1           xxx     namea    1
1           xxx     nameh    1.1
1           xxx     nameg    2
2           yyy     namef    1.5
3           zzz     named    1.7
3           zzz     names    0.9
您可以在这里查看:

select
    @rn := case when @company <> company then @rn + 1 else @rn end as rn,
    @company := company as cia,
    Name,
    Price
from
    (select @rn := 0) i,
    (select @company := company as company, Name, Price
     from ff order by company) t;
+----+-----+-------+-------+
| rn | cia | Name  | Price |
+----+-----+-------+-------+
| 1  | xxx | namea | 1,00  |
+----+-----+-------+-------+
| 1  | xxx | nameh | 1,10  |
+----+-----+-------+-------+
| 1  | xxx | nameg | 2,00  |
+----+-----+-------+-------+
| 2  | yyy | namef | 1,50  |
+----+-----+-------+-------+
| 3  | zzz | named | 1,70  |
+----+-----+-------+-------+
| 3  | zzz | names | 0,90  |
+----+-----+-------+-------+