SQL

10/06/2004 - 01:20 por Ricardo | Informe spam
Necesito hacer un Procedimiento almacenado normal, con un
select * from tabla, pero quiero que me genere un campo
mas por cada fila...hasta ahi todo bien pero necesito que
el campo nuevo sea la multiplicacion entre el numero de la
fila por 1 por ejemplo.
Si en una tabla tengo 2 registro, me entregue todos los
campos normales y mas encima un nuevo campo que en el
primer registro entregado me de 1 y el segundo me de 2.
Espero me puedan ayudar desde ya gracias.
 

Leer las respuestas

#1 Javier Loria
10/06/2004 - 07:23 | Informe spam
Hola:
En general esto es mejor hacerlo en el cliente, que normalmente almacena
los conjuntos de datos en matrices o derivados de matrices donde es muy
facil contar lineas. Si quieres hacerlo en SQL una posibilidad es hacer un
SELECT con un COUNT(*) de las filas que son menores o iguales a esta fila
basados en la llave primaria. Seria algo como:
SELECT T.PK1, T.Col1, T.Col2, ... T.Coln, COUNT(T2.*)
FROM Tabla AS T
JOIN Tabla AS T2
ON T.PK>=T2.PK
GROUP BY T.PK1, T.Col1, T.Col2, ... T.Coln
Saludos,


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.
Ricardo escribio:
Necesito hacer un Procedimiento almacenado normal, con un
select * from tabla, pero quiero que me genere un campo
mas por cada fila...hasta ahi todo bien pero necesito que
el campo nuevo sea la multiplicacion entre el numero de la
fila por 1 por ejemplo.
Si en una tabla tengo 2 registro, me entregue todos los
campos normales y mas encima un nuevo campo que en el
primer registro entregado me de 1 y el segundo me de 2.
Espero me puedan ayudar desde ya gracias.

Preguntas similares