cómo establecer el número de fila en sybase consulta

Tengo un select statemnt que devolverá los resultados, por ejemplo, 1.000 uso de unirse con unos 3 a 4 mesas. Mi requisito es disponer de columna de identidad en el conjunto de resultados . Alguien me puede ayudar en esto.

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

Como Row_number en sql , ¿tenemos algo que aquí en sybase

  • Tal vez con un punto de vista?
InformationsquelleAutor antosnowin | 2013-05-17

2 Kommentare

  1. 5

    En sybase no hay row_number o algo por el estilo. Tal vez las tablas temporales con columna de identidad ayudará a usted?

    Considerar el ejemplo de abajo, por favor.

     select Rowid = identity(8), id, name      
     into #temtab
     from tab
    
     select Rowid, id, name
     from #temtab
    
    • ¿qué piensa usted de mis respuestas para el futuro desarrollador ?
    • Sería más difícil para la más complicada estructura de tablas.
    • ¿recomand para eliminar o mantener con más explicación ?
    • En mi opinión debe ser eliminado. Su respuesta no resuelve OP problema.
  2. 2

    En la versión de Sybase IQ yo uso, el Número de versión() o ROW_NUMBER() existen funciones. En mi versión se pueden utilizar los siguientes:

    select Number() rowid, id, name      
     from tab
    

    o

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

    o

    select ROW_NUMBER() OVER (ORDER BY id) rowid, id, name      
     from tab
    
    • Pero lo que si usted no desea hacer su pedido por ROW_NUMBER()?

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea