如何为多个组中的N个结果分配相同的数字 一个oracle查询?在这种情况下,我在 num_per_grp 中说明了它。
我尝试过group_no使用row_number()和rank()组,但结果不符合我的要求。事实证明,每个组都有1,2个序列号。
我试过这个:
|--------+------------+------------+--------------+-------------|
| id | group_no | amount | created_date | row_number |
|--------+------------+------------+--------------+-------------|
| 1 | aaaaa | 10 | 1/1/2016 | 1 |
| 2 | aaaaa | -10 | 1/1/2016 | 2 |
| 3 | bbbbb | 20 | 2/1/2016 | 1 |
| 4 | bbbbb | -20 | 2/1/2016 | 2 |
| 5 | ccccc | 30 | 3/1/2016 | 1 |
| 6 | ccccc | -30 | 3/1/2016 | 2 |
|--------+------------+------------+--------------+-------------|
结果应该是这样的:
|--------+------------+------------+-------------|
| id | group_no | amount | num_per_grp |
|--------+------------+------------|-------------|
| 1 | aaaaa | 10 | 3 |
| 2 | aaaaa | -10 | 3 |
| 3 | bbbbb | 20 | 2 |
| 4 | bbbbb | -20 | 2 |
| 5 | ccccc | 30 | 1 |
| 6 | ccccc | -30 | 1 |
|--------+------------+------------+-------------|
我怎么能达到这样的目标?