如何从表中选择所有列以及其他列,例如ROWNUM?


74

在Oracle中,可以执行一条SELECT语句来返回行号作为结果集中的一列。

例如,

SELECT rownum, column1, column2 FROM table

返回:

rownum        column1        column2
1乔·史密斯
2鲍勃·琼斯

但是我不想手动指定每一列。我想做类似的事情:

select rownum,* from table
rownum        column1        column2        column3        column4
1乔·史密斯1 2
2鲍勃·琼斯3 4

有任何想法吗?

Answers:



7

Dave的答案很好,我想补充一点,也可以通过将通配符放在第一列来做到这一点:

select *,rownum from table

可以,但是以下内容不会:

select rownum,* from table

我已经在MySQL上进行了测试。


17
在MySQL上测试”-不使用表名(table.*),在要求该问题的Oracle上将无法使用。
a_horse_with_no_name 2014年

-8

不幸的是,我认为没有办法做到这一点,最简单的方法可能是使用id,count(*)的内联表与自身进行内部联接,并放入外部select语句

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.