Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Obtener el numero de la fila (MySQL)

Estas en el tema de Obtener el numero de la fila (MySQL) en el foro de Mysql en Foros del Web. Hola gente: Quisiera saber si existe alguna función para saber el numero de fila devuelto por la consulta. Por ejemplo, si en mi tabla tengo: ...
  #1 (permalink)  
Antiguo 29/09/2005, 16:44
Avatar de FuLaNo_  
Fecha de Ingreso: mayo-2003
Ubicación: Don Torcuato, Buenos Aires, Argentina
Mensajes: 1.250
Antigüedad: 20 años, 11 meses
Puntos: 2
Obtener el numero de la fila (MySQL)

Hola gente:

Quisiera saber si existe alguna función para saber el numero de fila devuelto por la consulta.

Por ejemplo, si en mi tabla tengo:

id | nombre
4 tomas
8 tamara
6 ignacio
1 marcela

Y yo hago una consulta en la que me devuelve los valores "tomas" y "marcela" quisiera poder obtener los valores "1" y "4", que corresponden al orden de tomas y marcela en la tabla (no es el "id" de cada uno, ya que esto no siempre es acorde a la posición de la tabla... el id 1 no siempre tiene que estar primero, y mucho menos si ordenamos los resultados alfabéticamente, por poner un ejemplo)...

No se si me explique bien
__________________
I Love Programming...
  #2 (permalink)  
Antiguo 29/09/2005, 23:19
Avatar de jahepi
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Querétaro
Mensajes: 1.124
Antigüedad: 19 años, 4 meses
Puntos: 43
Hola fulano!

La manera como se me ocurrió hacerlo fue creando una variable que registre el numero de fila, por ejemplo.

Código:
SELECT *, @fila:=@fila+1 AS nFila FROM miTabla;
Tendrías tu tabla con el numero de fila correspondiente, y lo podrías aplicar creando una tabla temporal de esta forma.

Código:
SELECT nombre, nFila FROM (SELECT *, @fila:=@fila+1 AS nFila FROM miTabla) AS tablaTemporal WHERE nombre = 'persona';
Suerte!!!
__________________
Una contraseña es como la ropa interior. No deberías dejarlas afuera a la vista de otras personas, deberías cambiarla regularmente, y ni se te ocurra prestarla a extraños.
  #3 (permalink)  
Antiguo 29/09/2005, 23:50
Avatar de Vice  
Fecha de Ingreso: agosto-2003
Mensajes: 613
Antigüedad: 20 años, 8 meses
Puntos: 2
Lo que tu pides lo puedes obtener así:
Código:
Select id, nombre from tabla where condición
Esto te devuelve el id (valor que tú quieres) y el nombre.
Un saludo.
__________________
Estoy contagiado de Generación-I
  #4 (permalink)  
Antiguo 30/09/2005, 08:13
Avatar de jahepi
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Querétaro
Mensajes: 1.124
Antigüedad: 19 años, 4 meses
Puntos: 43
Yo lo que entendí acerca de lo que quiere fulano, es que su campo id es su clave primaria pero no siempre tu clave va ser 1,2,3,4,5, etc., a veces va a ser algo así 2,4,8,34,etc...

Entonces el tiene su tabla así:

id | nombre
4 tomas
8 tamara
6 ignacio
1 marcela

Lo que alcance a comprender fué que quiere sacar el número de fila independientemente de su clave primaria.

fila| id | nombre
1 4 tomas
2 8 tamara
3 6 ignacio
4 1 marcela


No estoy si estoy en lo correcto, será mejor esperar a que Fulano responda .

Suerte!!!
__________________
Una contraseña es como la ropa interior. No deberías dejarlas afuera a la vista de otras personas, deberías cambiarla regularmente, y ni se te ocurra prestarla a extraños.
  #5 (permalink)  
Antiguo 30/09/2005, 11:16
Avatar de FuLaNo_  
Fecha de Ingreso: mayo-2003
Ubicación: Don Torcuato, Buenos Aires, Argentina
Mensajes: 1.250
Antigüedad: 20 años, 11 meses
Puntos: 2
Exactamente jahepi, eso es lo que necesito.
__________________
I Love Programming...
  #6 (permalink)  
Antiguo 30/09/2005, 14:09
 
Fecha de Ingreso: agosto-2005
Mensajes: 51
Antigüedad: 18 años, 8 meses
Puntos: 0
Bueno, pues entonces veo dos variantes:

1) hacer un recordset con un select que cuente los records(select count * from tabla)
2) hacer el recordset que quieres y tomar la propedad RecordCount del mismo, te da los registros que extrajo

salu2
__________________
RegalosCubaOnline
La nueva manera de enviar regalos a Cuba.
Gane dinero con nuestro sistema de afiliados.

****************************************
CUBA computer
Artículos | Revisiones | Foros
La comunidad cubana de expertos en computación
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:10.