4

I have a select statemnt which will return results say 1000 using join with some 3 to 4 tables. My requirement is to have identity column in the resultset . Can anyone help me on this.

ex :

Result :
id   name 
--   ----
001   xxx
002   yyy
003   zzz

My requirment :
Rowid   id   name 
 1      --   ----
 2       001   xxx 
 3       002   yyy
 4       003   zzz

Like Row_number in sql , do we have anything here in sybase

Robert
  • 25,425
  • 8
  • 67
  • 81
antosnowin
  • 221
  • 2
  • 6
  • 13

2 Answers2

8

In sybase there isn't row_number or something like that. Maybe temporary tables with identity column will help you?

Consider below example please.

 select Rowid = identity(8), id, name      
 into #temtab
 from tab

 select Rowid, id, name
 from #temtab
Robert
  • 25,425
  • 8
  • 67
  • 81
2

In the version of Sybase IQ I use, version Number() or ROW_NUMBER() functions exist. In my version you may use following:

select Number() rowid, id, name      
 from tab

or

select ROW_NUMBER() OVER (PARTITION BY name ORDER BY id) rowid, id, name      
 from tab

or

select ROW_NUMBER() OVER (ORDER BY id) rowid, id, name      
 from tab
Orhan Celik
  • 1,513
  • 15
  • 12