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

Obtener primer registro de una consulta

Estas en el tema de Obtener primer registro de una consulta en el foro de Mysql en Foros del Web. Hola! Esto lo he posteado porque no se cómo buscarlo en el search, como definir la búsqueda. Lo que pretendo es algo senzillo, supongo. Al ...
  #1 (permalink)  
Antiguo 15/12/2005, 11:28
Avatar de ortiz  
Fecha de Ingreso: septiembre-2004
Mensajes: 154
Antigüedad: 19 años, 7 meses
Puntos: 0
Obtener primer registro de una consulta

Hola!

Esto lo he posteado porque no se cómo buscarlo en el search, como definir la búsqueda.

Lo que pretendo es algo senzillo, supongo. Al realizar una consulta, con mysq_query, quiero discriminar el primer y último registro.

Es decir, cuando ejecuto el mysql_fetch_array, saber si es la primera fila de la tabla o la última. Busco la última o la primera fila según la consulta realizada, no el primer o último registro de una fila, ojo :D

Gracias :)
__________________
Juegos de Estrategia para PC - Warphammer.net :: Estrategia sólo en castellano
  #2 (permalink)  
Antiguo 15/12/2005, 12:01
Avatar de Jose_minglein2  
Fecha de Ingreso: noviembre-2004
Mensajes: 2.344
Antigüedad: 19 años, 5 meses
Puntos: 8
si esa información la tienes antes de ejecutar la consulta (me refiero a si sabes si necesitas la primera o la ultima) puedes hacer en la consulta un LIMIT 1 y si es la última
order by micampo desc limit 1
  #3 (permalink)  
Antiguo 19/12/2005, 18:41
Avatar de ortiz  
Fecha de Ingreso: septiembre-2004
Mensajes: 154
Antigüedad: 19 años, 7 meses
Puntos: 0
más dudas :S

Gracias por tu respuesta. Me sacó de un apuro.
Si me permitís, sigo con mis dudas :(

Es sobre la siguiente posibilidad. Suponed que yo hago una consulta X, la que me da una serie de registros. Tengo una tabla con 20 filas insertadas.

Mi consulta sacará 5 de esas filas, con lo cual me quedan otras 15 en la BD. Yo a esas 15 filas, no las quiero dar tanta importancia por tema de fechas(con atrasadas por ej) y las quiero mostrar en segundo plano, con otro diseño.

Yo tendría que poder hacer algun tipo de consulta, que límitase ese número a las 15 filas referidas. O lo que es lo mismo que no me extrayese las 5 primeras.

Más tarde, en el caso de que fueran muchos más los registros los paginaría con el paginator :D

Bueno, muchas gracias!
__________________
Juegos de Estrategia para PC - Warphammer.net :: Estrategia sólo en castellano
  #4 (permalink)  
Antiguo 20/12/2005, 01:30
Avatar de Jose_minglein2  
Fecha de Ingreso: noviembre-2004
Mensajes: 2.344
Antigüedad: 19 años, 5 meses
Puntos: 8
Por ejemplo para las 5 primeras (por fecha p.ej).

select * from tabla order by fecha desc limit 5

y el resto

select * from tabal order by fecha desc limit 5, 15
  #5 (permalink)  
Antiguo 22/12/2005, 17:39
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 7 meses
Puntos: 41
Bueno.. ya respondí a ortiz via email y le dí una alternativa.

-------------------
-la cuestión es hacer primero un query y guardar la última fecha o id del resultado:

$consulta = mysql_query("SELECT * FROM tabla
ORDER BY fecha DESC LIMIT 5",$cbd);
while($fila = mysql_fetch_array($con)){
?><p><?=$fila['fecha'];?></p><?
}
// Capturamos el último id o fecha
$ultima_fecha = $fila['fecha'];


-Entonces, realizamos la siguiente query, pero con el valor recogido en $ultima_fecha discriminamos esos resultados.

$_pagi_sql = "SELECT * FROM tabla WHERE fecha < '$ultima_fecha' ORDER BY fecha DESC";
---------------------

Saludos
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:02.