Ответ 1
Квалифицируйте * с именем таблицы:
select rownum, table.* from table
В Oracle можно сделать оператор SELECT
, который возвращает номер строки в качестве столбца в вашем результирующем наборе.
Например,
SELECT rownum, column1, column2 FROM table
возвращает:
rownum column1 column2 1 Joe Smith 2 Bob Jones
Но я не хочу указывать каждый столбец вручную. Я хочу сделать что-то вроде:
select rownum,* from table
rownum column1 column2 column3 column4 1 Joe Smith 1 2 2 Bob Jones 3 4
Любые идеи?
Квалифицируйте * с именем таблицы:
select rownum, table.* from table
Ответ на Dave велик, я просто хотел бы добавить, что это также возможно сделать, поставив подстановочный знак в качестве первого столбца:
select *,rownum from table
Работает, но следующее не будет:
select rownum,* from table
Я тестировал MySQL.
К сожалению, я не думаю, что это способ сделать это, проще всего, возможно, внутреннее соединение с собой с помощью встроенной таблицы id, count (*) и поместить внешний оператор select