Ponieważ oznaczyłeś SAS, odpowiem SAS.
Na podstawie Twojego pytania uzyskanie takiego wyniku z tych danych wejściowych byłoby tak proste, jak to
data result;
ID=_N_;
set input;
run;
lub
proc sql;
select ID as monotonic()
,NID
from input
;
quit;
W czystym Oracle zrobiłbyś to
select rownum, NID
from input
Jednak możesz chcieć wrzucić tam ORDER BY, ponieważ prawdopodobnie uzyskasz inne wyniki za każdym razem, gdy to uruchomisz.