【发布时间】:2020-08-07 04:38:30
【问题描述】:
我正在尝试创建正确的选择,以便在表中获得有序值的行号。现在,输出确实有用于计数的row_num 字段,但我希望根据value 列在创建之前对计数进行升序排序。
如果可能,如何做到这一点?
现有代码:
select id, value, (select count(*)
from tbl b where a.id >= b.id) as row_num
from tbl a order by value asc
当前输出(无排序):Fiddle
id | value | row_num
1 | jbl | 1
3 | bog | 2
4 | tak | 3
6 | oza | 4
8 | ars | 5
当前输出(按值排序): Fiddle
id | value | row_num
8 | ars | 5
3 | bog | 2
1 | jbl | 1
6 | oza | 4
4 | tak | 3
期望的输出:
id | value | row_num
8 | ars | 1
1 | bog | 2
3 | jbl | 3
6 | oza | 4
8 | tak | 5
有一个类似的线程 (How to use ROW_NUMBER in sqlite),但 value 列未排序。
谢谢。
【问题讨论】:
标签: sqlite row-number