Как выбрать все столбцы из таблицы, а также дополнительные столбцы, такие как ROWNUM? - PullRequest
55 голосов
/ 22 октября 2010

В Oracle можно сделать оператор SELECT, который возвращает номер строки в виде столбца в вашем наборе результатов.

Например,

SELECT rownum, column1, column2 FROM table

возвращает:

<b>rownum</b>       <b>column1</b>       <b>column2</b>
1            Joe           Smith
2            Bob           Jones

Но я не хочу указывать каждый столбец вручную.Я хочу сделать что-то вроде:

select rownum,* from table
<b>rownum</b>       <b>column1</b>       <b>column2</b>       <b>column3</b>       <b>column4</b>
1            Joe           Smith         1             2
2            Bob           Jones         3             4

Есть идеи?

Ответы [ 3 ]

102 голосов
/ 22 октября 2010

Укажите * с именем таблицы:

select rownum, table.* from table
3 голосов
/ 22 ноября 2014

Ответ Дейва великолепен, я просто хотел бы добавить, что это также возможно сделать, поместив подстановочный знак в качестве первого столбца:

select *,rownum from table

Работает, но следующее не будет:

select rownum,* from table

Я тестировал на MySQL.

0 голосов
/ 10 апреля 2017

К сожалению, я не думаю, что есть способ сделать это, проще всего, вероятно, является внутреннее соединение с самим собой с помощью встроенной таблицы id, count (*) и установки внешнего оператора выбора

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...