连续计算postgresql数据

时间:2018-10-31 09:23:24

标签: postgresql

我需要帮助计算一些数据

这就是我想要的

| user_id | action_id | count       |
------------------------------------- 
| 1       |    1      | 1           |
| 2       |    2      | 1           |
| 3       |    2      | 2           |
| 4       |    3      | 1           |
| 5       |    3      | 2           |
| 6       |    3      | 3           |
| 7       |    4      | 1           |
| 8       |    5      | 1           |
| 9       |    5      | 2           |
| 10      |    6      | 1           |

这就是我所拥有的

| user_id | action_id | count |
------------------------------- 
| 1       |    1      | 1     |
| 2       |    2      | 1     |
| 3       |    2      | 1     |
| 4       |    3      | 1     |
| 5       |    3      | 1     |
| 6       |    3      | 1     |
| 7       |    4      | 1     |
| 8       |    5      | 1     |
| 9       |    5      | 1     |
| 10      |    6      | 1     |

我真的需要它来创建一些有关用户第二步操作的研究 我该怎么办?

谢谢

1 个答案:

答案 0 :(得分:1)

在这里可以使用ROW_NUMBER

SELECT
    user_id,
    action_id,
    ROW_NUMBER() OVER (PARTITION BY action_id ORDER BY user_id) count
FROM yourTable
ORDER BY
    user_id;

enter image description here

Demo