获取唯一值在 table 中出现的次数
Get the number of times a unique value appears in a table
我有一个 table 像这样:
Email | Number
a | 0.5
a | 1
a | 1.1
b | 5
b | 3.7
我想保留相同的 table 布局,但根据编号列的排名顺序获取唯一电子邮件的实例编号:
Email | Number | RankOrder
a | 0.5 | 3
a | 1 | 2
a | 1.1 | 1
b | 7.7 | 1
b | 6 | 2
如果我没理解错的话,你需要 row_number()
函数(这是大多数数据库中可用的 ANSI 标准函数):
select email, number,
row_number() over (partition by email order by number desc) as rankorder
from t;
您可以使用窗口化 Row_Number()
:
Select Email, Number,
Row_Number() Over (Partition By Email Order By Number Desc) As RankOrder
From LikeSo;
我有一个 table 像这样:
Email | Number
a | 0.5
a | 1
a | 1.1
b | 5
b | 3.7
我想保留相同的 table 布局,但根据编号列的排名顺序获取唯一电子邮件的实例编号:
Email | Number | RankOrder
a | 0.5 | 3
a | 1 | 2
a | 1.1 | 1
b | 7.7 | 1
b | 6 | 2
如果我没理解错的话,你需要 row_number()
函数(这是大多数数据库中可用的 ANSI 标准函数):
select email, number,
row_number() over (partition by email order by number desc) as rankorder
from t;
您可以使用窗口化 Row_Number()
:
Select Email, Number,
Row_Number() Over (Partition By Email Order By Number Desc) As RankOrder
From LikeSo;