如何为一组结果分配一个数字,但在新的唯一ID开头重新开始编号?

时间:2014-12-17 11:33:38

标签: sql teradata

我正在尝试(在查询中)将行号分配给按客户ID分组的日期。我意识到这几乎没有作为描述的意义,所以我在下面包含了一个例子(我没有发布图像的声誉,HTML表格似乎在这里工作所以我已经包含了一个可以运行的HTML表格在浏览器上。为此带来的不便表示抱歉):

Cust_ID Date        Assigned_value
-----------------------------------
1       11/12/2014  1
1       12/12/2014  2
1       13/12/2014  3
1       14/12/2014  4
1       15/12/2014  5
2       16/12/2014  1
2       17/12/2014  2
2       18/12/2014  3
3       11/12/2014  1
3       12/12/2014  2
3       13/12/2014  3

非常感谢任何帮助

1 个答案:

答案 0 :(得分:2)

我认为您正在寻找row_number()功能:

select cust_id, date,
       row_number() over (partition by cust_id order by date) as assigned_value
from table t;