Foros del Web » Programando para Internet » PHP »

Obtener una fila de la base de datos

Estas en el tema de Obtener una fila de la base de datos en el foro de PHP en Foros del Web. Pues mi pregunta es esa, cómo obtengo una fila, por ejemplo la 6, de una base de datos con independencia del id que tenga. Es ...
  #1 (permalink)  
Antiguo 18/03/2005, 11:57
 
Fecha de Ingreso: noviembre-2002
Mensajes: 59
Antigüedad: 21 años, 4 meses
Puntos: 0
Obtener una fila de la base de datos

Pues mi pregunta es esa, cómo obtengo una fila, por ejemplo la 6, de una base de datos con independencia del id que tenga. Es decir, lo que quiero es obtener aleatoriamente dicha fila pero no me puedo basar en los id ya que estos pueden no existir.

De momento lo que he pensado es:
contar el número de filas
utilizar la función rand sobre estas
obtener una columna con independencia de su id --> Es aquí donde no doy pié con bola
mostrar


Gracias anticipadas jonai
  #2 (permalink)  
Antiguo 18/03/2005, 12:06
 
Fecha de Ingreso: marzo-2005
Mensajes: 74
Antigüedad: 19 años
Puntos: 0
Hola

Puedes utilizar la funcion "mysql_result" con la que a partir de una consulta puedes obtener el valor de un dato de una tupla.

Tienes que tener en cuenta que mysql no guarda secuencialmente por lo que si no tienes un criterio de ordenación (clave primaria) no tendras la certeza de que fila estas consultando.

Salu2
KAYETANO
  #3 (permalink)  
Antiguo 18/03/2005, 14:26
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
Puedes usar una sentencia SQL tipo:

Código PHP:
$sql="SELECT * FROM tabla ORDER BY RAND() LIMIT 1"
La ejecutas y listo .. tendras un registro aletaorio .. Si cambias el LIMIT de 1 a ?? tendras N registros aleatorios ...

Un saludo,
  #4 (permalink)  
Antiguo 21/03/2005, 11:34
 
Fecha de Ingreso: noviembre-2002
Mensajes: 59
Antigüedad: 21 años, 4 meses
Puntos: 0
OK gracias, realmente me estais salvando el pellejo.

Ya tengo otra consulta para luego, pero primero me voy a pelear con el buscador y mis escasos conocimientos.

jejeje Gracias
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 18:24.