web-dev-qa-db-fra.com

Comment sélectionner toutes les colonnes d'une table, ainsi que des colonnes supplémentaires comme ROWNUM?

Dans Oracle, il est possible de faire une instruction SELECT qui renvoie le numéro de ligne sous forme de colonne dans votre jeu de résultats.

Par exemple,

SELECT rownum, column1, column2 FROM table

résultats:

rownumcolonne1colonne2
 1 Joe Smith 
 2 Bob Jones 

Mais je ne veux pas spécifier chaque colonne à la main. Je veux faire quelque chose comme:

select rownum,* from table
rownumcolonne1colonne2colonne3colonne4
 1 Joe Smith 1 2 
 2 Bob Jones 3 4 

Des idées?

58
ntsue

Qualifiez le * avec le nom de la table:

select rownum, table.* from table
105
Dave Costa

La réponse de Dave est excellente, je voudrais juste ajouter qu'il est également possible de le faire en plaçant le caractère générique comme première colonne:

select *,rownum from table

Fonctionne, mais pas ce qui suit:

select rownum,* from table

J'ai testé sur MySQL.

2
gaborous