sql - Need help numbering rows -


i'm working t-sql , need order result set in custom manner. consider following table , query:

create table deleteme (col1 int)  insert deleteme values (0), (2), (2), (3), (4), (4), (4)  select row_number() on (order col1) orderby, col1 deleteme order col1 

returning:

orderby col1

1 0

2 2

3 2

4 3

5 4

6 4

7 4

however, need this:

orderby col1

1 0

2 2

2 2

3 3

4 4

4 4

4 4

essentially, each value of col1 same, orderby value should same. orderby attribute needs start @ 1 , sequential. if deleted record col1 = 0, result again start @ 1:

orderby col1

1 2

1 2

2 3

3 4

3 4

3 4

i've been playing partition , other things , i'm stumped @ point. appreciated.

use dense_rank:

select dense_rank() on (order col1) orderby, col1 deleteme order col1 

Comments

Popular posts from this blog

c++ - CryptStringToBinary API behavior -

java.util.scanner - How to read and add only numbers to array from a text file -

iphone - Three second countdown in cocos2d -