Нумерация строк в SQL-запросе (в выводе результата)

Нумерация строк в выводе SQL запроса

Есть таблица Oracle (или любая другая СУБД). Нужно последовательно вывести записи вместе с порядковым номером в результате (выводе) SQL-запроса. Нет ничего проще:

Select rownum, pole1,pole2,pole3 from my_table;

Однако если перед выводом нужно записи отсортировать (ORDER BY) по полям, тогда такой требование не проходит, так как Оракл сначала формирует ROWNUM, и лишь потом сортирует записи.

Поэтому будем Oracle обманывать таким образом:

Select rownum, pole1,pole2,pole3 from  
    (Select  pole1,pole2,pole3 from my_table order by pole1,pole2,pole3);

Вас заинтересует / Intresting for you:

Использование функций SQL в за...
Использование функций SQL в за... 13008 просмотров Боба Wed, 18 Apr 2018, 04:56:26
Язык SQL в Oracle
Язык SQL в Oracle 4295 просмотров Ирина Светлова Tue, 21 Nov 2017, 13:26:01
Как отменить команды SQL в Ora...
Как отменить команды SQL в Ora... 1080 просмотров Андрей Васенин Sat, 05 Jun 2021, 10:14:02
Oracle и непроцедурный доступ ...
Oracle и непроцедурный доступ ... 8524 просмотров Antoni Tue, 21 Nov 2017, 13:32:50
Войдите чтобы комментировать

ildergun аватар
ildergun ответил в теме #10946 1 год 2 мес. назад
Спасибо за пример!
VladStr аватар
VladStr ответил в теме #8118 7 года 2 мес. назад
Ах-ха-ха!! Действительно обманул Oracle! Я столько ломал голову над тем, как это сделать. Большое спасибо за наглядный пример!