如何为重复添加值?
Posted
技术标签:
【中文标题】如何为重复添加值?【英文标题】:How to add a value for repetition? 【发布时间】:2020-07-29 11:26:14 【问题描述】:如果标题不合适,请原谅
我有一张如下表
Dev FCNo DateTime
dev1 1 12-06-2020
dev1 2 12-06-2020
dev1 3 13-06-2020
dev1 4 14-06-2020
dev1 5 15-06-2020
dev1 6 15-06-2020
dev1 7 16-06-2020
dev1 1 16-06-2020
dev1 2 16-06-2020
dev1 3 17-06-2020
dev1 4 17-06-2020
dev2 1 12-06-2020
dev2 2 12-06-2020
dev2 3 13-06-2020
dev2 1 13-06-2020
dev2 2 13-06-2020
dev2 3 14-06-2020
我想要一列
Dev FCNo DateTime Occurance
dev1 1 12-06-2020 1
dev1 2 12-06-2020 1
dev1 3 13-06-2020 1
dev1 4 14-06-2020 1
dev1 5 15-06-2020 1
dev1 6 15-06-2020 1
dev1 7 16-06-2020 1
dev1 1 16-06-2020 2
dev1 2 16-06-2020 2
dev1 3 17-06-2020 2
dev1 4 17-06-2020 2
dev2 1 12-06-2020 1
dev2 2 12-06-2020 1
dev2 3 13-06-2020 1
dev2 1 13-06-2020 2
dev2 2 13-06-2020 2
dev2 3 14-06-2020 2
当特定设备的 FCNo 重复为 1 时,应增加 Occurance。如何在 SQL 中实现这一点
谢谢
【问题讨论】:
【参考方案1】:请使用以下查询,
select dev, fcno, datetime, rnk
from
(select dev, fcno, datetime, row_number() over(partition by dev, fcno) as rnk
from table_name) qry order by dev, fcno;
【讨论】:
【参考方案2】:我想你想要row_number()
:
select t.*,
row_number() over (partition by fcno, dev order by datetime) as occurrence
from t;
【讨论】:
以上是关于如何为重复添加值?的主要内容,如果未能解决你的问题,请参考以下文章