Foros del Web » Programando para Internet » PHP »

¿Cómo realizar esta consulta a la base de datos (MySQL)?

Estas en el tema de ¿Cómo realizar esta consulta a la base de datos (MySQL)? en el foro de PHP en Foros del Web. Hola, cómo podría hacer con PHP y MySQL lo siguiente: Tengo por ejemplo una tabla en MySQL con los datos: Usuarios - Cantidad ---------------- Usuario1 ...
  #1 (permalink)  
Antiguo 20/12/2007, 17:08
Avatar de hgp147  
Fecha de Ingreso: diciembre-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 980
Antigüedad: 17 años, 4 meses
Puntos: 36
¿Cómo realizar esta consulta a la base de datos (MySQL)?

Hola, cómo podría hacer con PHP y MySQL lo siguiente:

Tengo por ejemplo una tabla en MySQL con los datos:

Usuarios - Cantidad
----------------
Usuario1 - 4
Usuario2 - 8
Usuario3 - 2


Lo que quiero hacer es una consulta MySQL que me devuelva como resultado la posicion que ocupa el usuario de acuerdo al numero que tiene en cantidad.

Ejemplo, si quisiera saber el usuario2 en que posición está, la consulta me tendría que devolver: . Si consulto por el usuario1 que me diga , y si consulto por el usuario3 que me diga .

Diganme si no me entiendieron...

Gracias
  #2 (permalink)  
Antiguo 20/12/2007, 17:46
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Re: ¿Cómo realizar esta consulta a la base de datos (MySQL)?

a que te refieres con posicion? y eso de cantidad? no entiendo
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #3 (permalink)  
Antiguo 20/12/2007, 18:00
Avatar de hades87  
Fecha de Ingreso: diciembre-2007
Ubicación: Barcelona - España
Mensajes: 3.194
Antigüedad: 16 años, 4 meses
Puntos: 68
Re: ¿Cómo realizar esta consulta a la base de datos (MySQL)?

pero la posicion que esta a que te refieres?
  #4 (permalink)  
Antiguo 20/12/2007, 19:17
Avatar de hgp147  
Fecha de Ingreso: diciembre-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 980
Antigüedad: 17 años, 4 meses
Puntos: 36
Re: ¿Cómo realizar esta consulta a la base de datos (MySQL)?

Hola, lo que queria hacer es un sistema de votos, cuando digo cantidad me estoy refiriendo a la cantidad de votos que tiene un usuario.

En el ejemplo:

Usuarios - Cantidad (de votos)
----------------
Usuario1 - 4
Usuario2 - 8
Usuario3 - 2


El usuario1 tiene 4 votos, el usuario2 tiene 8, y el usuario3 tiene 2.

Con respecto a la posición en que esta: me refiero a que lugar ocupa con respecto a la cantidad de votos. En el ejemplo el primer puesto es ocupado por el usuario2 ya que es el que tiene más votos, el segundo puesto por el usuario1, y el tercer puesto por el usuario3.



Lo que quiero es saber que posicion ocupa un usuario especifico. Es decir, si quiero saber el usuario5 en que posición esta, que el resultado de la consulta a la base de datos, me de la posición que ocupa.


Gracias. Espero haberme explicado mejor
  #5 (permalink)  
Antiguo 20/12/2007, 20:13
Avatar de pragone  
Fecha de Ingreso: diciembre-2007
Ubicación: Madrid
Mensajes: 223
Antigüedad: 16 años, 4 meses
Puntos: 2
Re: ¿Cómo realizar esta consulta a la base de datos (MySQL)?

La verdad no conozco una forma... pero es que en cualquier caso, me parece que MySQL tendría que ordenar toda la tabla en cada ocasión para poder saber en qué posición está cada usuario, por lo que probablemente lo mejor sería que tuvieras un campo adicional con la posición y que cada cierto tiempo hagas un ORDER BY y actualices el campo.
  #6 (permalink)  
Antiguo 21/12/2007, 01:14
 
Fecha de Ingreso: septiembre-2004
Ubicación: Chihuahua Mex
Mensajes: 404
Antigüedad: 19 años, 7 meses
Puntos: 2
Re: ¿Cómo realizar esta consulta a la base de datos (MySQL)?

debes usar php para eso mira primero haces la consulta

Código PHP:
<?php $sql "SELECT usuarios FROM tabla  ORDER BY Cantidad";
$db->query($sql);
                  while(
$db->next_record()) {

$lugar=1
echo 
$lugar $db->f("user_id"); 
$lugar++; ?>
Avisame si funciona
  #7 (permalink)  
Antiguo 21/12/2007, 09:27
Avatar de hgp147  
Fecha de Ingreso: diciembre-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 980
Antigüedad: 17 años, 4 meses
Puntos: 36
Re: ¿Cómo realizar esta consulta a la base de datos (MySQL)?

Gracias a todos por su ayuda. Ya logre hacerlo:

Código PHP:
<?php 

$usuario 
"hgp147";

include(
"conexion.php");

conectar();

$result mysql_query("SELECT * FROM usuarios ORDER BY cantidad DESC");

desconectar();

$posicion 0;

while (
$fila mysql_fetch_object($result)){

$posicion++;

if(
$fila->usuario == $usuario){

echo 
$fila->usuario " : " $posicion;

}

}

?>
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 04:23.