数据
a|b|c
-----
1|1|2
1|1|2
1|2|3
2|2|2希望取出格式如下a|b|c|rw
---------
1|1|2|1
1|1|2|2
1|2|3|1
2|2|2|1===============
用row_number按a分组能得出以下结果a|b|c|rw
---------
1|1|2|1
1|1|2|2
1|2|3|3
2|2|2|1但是不是我想要的,我需要按a,b,c分组
a|b|c
-----
1|1|2
1|1|2
1|2|3
2|2|2希望取出格式如下a|b|c|rw
---------
1|1|2|1
1|1|2|2
1|2|3|1
2|2|2|1===============
用row_number按a分组能得出以下结果a|b|c|rw
---------
1|1|2|1
1|1|2|2
1|2|3|3
2|2|2|1但是不是我想要的,我需要按a,b,c分组
select a , b, c, row_number() over(partition by a , b, c order by a , b, c) rw from tb/*
A B C RW
--------------------------------------- --------------------------------------- --------------------------------------- ----------
1 1 2 1
1 1 2 2
1 2 3 1
2 2 2 1
4 rows selected
*/drop table tb
--晕,没看到你最后一句话要按a,b,c分组
row_number()over(partition by a,b,c order by a,b,c)
row_number()
1 2 3 4 ...
rank()
1 2 2 4 ...
dense_rank()
1 2 2 3 ...
既然你已经晓得了row_number
row_number() over(partition by a,b,c order by a,b,c)
a|b|c
-----
1|1|2
1|1|2
1|2|3
2|2|2如何写才能得到如下格式呢?a|b|c
-----
1|1|3
2|2|2