Для данной таблицы выдают счетчик для каждой строки Oracle SQL - PullRequest
0 голосов
/ 19 марта 2019

если у меня есть таблица, подобная этой:

ID  | Name   | Payment
----------------------
101 | Victor | 10
103 | Andy   | 13
134 | Mai    | 2
156 | Chris  | 68
179 | Ryan   | 43

И я хочу запрос, который выдает следующее

[Count] | ID  | Name   | Payment
----------------------
1       | 101 | Victor | 10
2       | 103 | Andy   | 13
3       | 134 | Mai    | 2
4       | 156 | Chris  | 68
5       | 179 | Ryan   | 43

Так что выдает номер каждой строки, ноЯ не знаю, как это сделать (я новичок в SQL).Любые советы?

Ответы [ 3 ]

2 голосов
/ 19 марта 2019

Просто используйте row_number():

select row_number() over (order by id) as "Count",
       t.*
from t
order by "Count";

Вы должны иметь оба значения order by s, чтобы убедиться, что нумерация строк правильная, а порядок строк в наборе результатов правильный.

0 голосов
/ 19 марта 2019

просто

select rownum, ID , Name, Payment from table
0 голосов
/ 19 марта 2019

используйте dense_rank()

select *,dense_rank() over(order by id) from t

или вы можете использовать count()

  select *,count(*) over(order by id) from t
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...