Есть таблица 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);