PDA

Ver la Versión Completa : Numero de registro


dieleo
17-01-2007, 21:48:59
Hola a todos.

Queria saber como realizar un consulta donde que devuelva la consulta y el nro de registro.

Select NRO_REGISTRO(record number), campo1, campo2 from tabla

ej.

Nro.Reg. Nombre
1 Pedro
2 Pablo
3 Maria
etc...

No se si se entiende lo que preciso.

Desde ya, Gracias.

German
17-01-2007, 21:58:29
¿Lo que necesitas es el número de registro, o la fila que ocupe el registro segun la ordenacion?..

Bicho
17-01-2007, 21:59:36
Hola, quiero entender que record_number no es un campo de la tabla, no?

Normalmente los motores de bases de datos, tienen un campo oculta para cada tabla que identifica cada registro de forma única, pero habría que averiguar como se llama ese campo en el motor que usas, que no indicas cual es.
En Oracle es RowId, pero no se cual será tu caso.

Si no tenemos ese RowId (o el que sea), tendrás que obtener eso en un dataset en Delphi, que recorra la tabla, y guardes en una variable el número de registro.

Espero te sirva.

Saludos

dieleo
18-01-2007, 13:52:38
En realidad la pregunta es esta. Realice esa pregunta, porque pense hacer lo siguiente son subqueries filtrando por el nro de registro.

Tengo esta tabla por ej.

Tabla1 (no tiene clave primaria ni indices)
.Nombre
.Importe (importe puede ser positivo o negativo)

Lo que quiero es armar un query para mostrar la siguiente consulta.

Nombre ImportePositivo ImporteNegativo
Pedro 20,00
Pedro -30,50
Pedro -100,25
Pedro 4,09
etc ...

Que el query muestre en una columna los valores positivos y en la otra los negativos, pero en la tabla los valores estan todos en un mismo campo.

Gracias.

fdelamo
18-01-2007, 14:11:32
Prueba con esto



SELECT NOMBRE, IMPORTE AS POSITIVO, NULL AS NEGATIVO
WHERE IMPORTE >= 0
UNION
SELECT NOMBRE, NULL AS POSITIVO, IMPORTE AS NEGATIVO
WHERE IMPORTE < 0



dependiendo del motor que uses, quizá debas hacer un CAST de los nulos

dieleo
19-01-2007, 13:35:10
Gracias, si me sirve, no se me ocurrio hacerlo asi.