Как мне написать запрос, который выводит номер строки в виде столбца? - PullRequest
12 голосов
/ 13 января 2009

Как мне написать запрос, который выводит номер строки в виде столбца? Это DB2 SQL на iSeries.

например, если у меня есть

стол Битлз:

John
Paul
George
Ringo

и я хочу написать заявление, без написания процедуры или представления, если это возможно, что дает мне

1 John
2 Paul
3 George
4 Ringo

Ответы [ 3 ]

25 голосов
/ 13 января 2009
SELECT ROW_NUMBER() OVER (ORDER BY beatle_name ASC) AS ROWID, * FROM beatles
1 голос
/ 13 января 2009

Проверьте функцию row_number (); Вы должны быть в состоянии сделать это в DB2 через:

SELECT row_number(), first_name FROM beatles

Я почти уверен, что это не является частью стандарта SQL, поэтому он вряд ли будет переносимым, если это когда-либо станет проблемой.

0 голосов
/ 10 июня 2010
SELECT ROW_NUMBER() OVER(ORDER BY BEATLE_NAME) ROWNUM,BEATLE_NAME FROM BEATLES;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...