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

[SOLUCIONADO] Resultado mayor

Estas en el tema de Resultado mayor en el foro de Mysql en Foros del Web. Hola, muy buenas. Tengo un problema con mostrar los resultados más grandes... Tengo un login que el usuario tiene coins y uno tiene 500 y ...
  #1 (permalink)  
Antiguo 18/02/2014, 14:06
Avatar de TSG
TSG
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 373
Antigüedad: 10 años, 7 meses
Puntos: 9
Resultado mayor

Hola, muy buenas.

Tengo un problema con mostrar los resultados más grandes...
Tengo un login que el usuario tiene coins y uno tiene 500 y otro 1000...
pero solo se me muestra 500 que equivale al usuario que tiene la id 1.

Este es mi código:

Código PHP:
Ver original
  1. <?php
  2.     $top = mysqli_query($conexion, "SELECT MAX(coins) as coins FROM login ORDER BY id LIMIT 10")or die(mysqli_error($conexion));
  3.     $topp = mysqli_fetch_assoc($top);
  4.     echo $topp['coins'];
  5.  
  6. ?>

Si pudieran echarme una mano lo agradecería.
Un cordial saludo.
  #2 (permalink)  
Antiguo 18/02/2014, 14:08
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años
Puntos: 528
Respuesta: Resultado mayor

SELECT MAX(coins) as coins FROM login ORDER BY id LIMIT 10

¿y si quitas el ORDER BY id LIMIT 10?
  #3 (permalink)  
Antiguo 18/02/2014, 14:09
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Resultado mayor

¿Si sabes lo que hace la consulta de SQL que tienes verdad?

Lo digo porque has preguntado en el foro de PHP, y a todas luces tu consulta de SQL luce mal.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 18/02/2014, 14:11
Avatar de TSG
TSG
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 373
Antigüedad: 10 años, 7 meses
Puntos: 9
Respuesta: Resultado mayor

Cita:
Iniciado por ocp001a Ver Mensaje
SELECT MAX(coins) as coins FROM login ORDER BY id LIMIT 10

¿y si quitas el ORDER BY id LIMIT 10?
Ya lo he quitado y sigue igual.
  #5 (permalink)  
Antiguo 18/02/2014, 14:12
Avatar de TSG
TSG
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 373
Antigüedad: 10 años, 7 meses
Puntos: 9
Respuesta: Resultado mayor

Cita:
Iniciado por pateketrueke Ver Mensaje
¿Si sabes lo que hace la consulta de SQL que tienes verdad?

Lo digo porque has preguntado en el foro de PHP, y a todas luces tu consulta de SQL luce mal.
Llevo ya tiempo y no encuentro la respuesta del problema.
Saludos.
  #6 (permalink)  
Antiguo 18/02/2014, 14:22
Avatar de xSkArx  
Fecha de Ingreso: marzo-2008
Ubicación: Chile
Mensajes: 945
Antigüedad: 16 años, 2 meses
Puntos: 96
Respuesta: Resultado mayor

Yo pienso que deberia ser asi
Código MySQL:
Ver original
  1. select coins from login order by coins desc
__________________
Busca, lee y practica todo lo que puedas.
Usa siempre el buscador antes de postear.
Si posteas código, utiliza el HIGHLIGHT correcto.
  #7 (permalink)  
Antiguo 18/02/2014, 14:27
Avatar de TSG
TSG
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 373
Antigüedad: 10 años, 7 meses
Puntos: 9
Respuesta: Resultado mayor

Cita:
Iniciado por xSkArx Ver Mensaje
Yo pienso que deberia ser asi
Código MySQL:
Ver original
  1. select coins from login order by coins desc
Gracias pero no es la solución,
Eso solo hace mostrar el ultimo resultado introducido en la base de datos.

Y yo lo que necesito es mostrar X resultados de los que tengas más coins.
Gracias por tu ayuda de todos modos.

Si alguien sabe algo pues lo agradecería.

Un cordial saludo.
  #8 (permalink)  
Antiguo 18/02/2014, 14:28
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Resultado mayor

Cita:
Iniciado por TSG Ver Mensaje
Llevo ya tiempo y no encuentro la respuesta del problema.
Saludos.
¿Será porque tu problema no es de PHP?

Digo, si el problema es la consulta de SQL lo correcto sería buscar ayuda en el foro de SQL.

Así es como funcionan las cosas, tu dirás.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #9 (permalink)  
Antiguo 18/02/2014, 14:29
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Resultado mayor

Cita:
Iniciado por TSG Ver Mensaje
Hola, muy buenas.

Tengo un problema con mostrar los resultados más grandes...
Tengo un login que el usuario tiene coins y uno tiene 500 y otro 1000...
pero solo se me muestra 500 que equivale al usuario que tiene la id 1.

Este es mi código:

Código PHP:
Ver original
  1. <?php
  2.     $top = mysqli_query($conexion, "SELECT MAX(coins) as coins FROM login ORDER BY id LIMIT 10")or die(mysqli_error($conexion));
  3.     $topp = mysqli_fetch_assoc($top);
  4.     echo $topp['coins'];
  5.  
  6. ?>

Si pudieran echarme una mano lo agradecería.
Un cordial saludo.
Es de manual...
Código MySQL:
Ver original
  1. SELECT id, coins
  2. FROM login
  3. ORDER BY voins DESC, id ASC
Eso si quieres los 10 resultados de mayores coins con su id correspondeinte.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #10 (permalink)  
Antiguo 18/02/2014, 14:31
Avatar de TSG
TSG
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 373
Antigüedad: 10 años, 7 meses
Puntos: 9
Respuesta: Resultado mayor

Cita:
Iniciado por pateketrueke Ver Mensaje
¿Será porque tu problema no es de PHP?

Digo, si el problema es la consulta de SQL lo correcto sería buscar ayuda en el foro de SQL.

Así es como funcionan las cosas, tu dirás.
Excelente, entonces marco este tema como solucionado.

Ya me ha quedado claro, gracias por ponermelo asín de claro.
Comentaré en el tema correspondiente.

Has ido directo al grano, excelente.
Muchas gracias.
  #11 (permalink)  
Antiguo 18/02/2014, 15:05
Avatar de TSG
TSG
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 373
Antigüedad: 10 años, 7 meses
Puntos: 9
Respuesta: Resultado mayor

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Es de manual...
Código MySQL:
Ver original
  1. SELECT id, coins
  2. FROM login
  3. ORDER BY voins DESC, id ASC
Eso si quieres los 10 resultados de mayores coins con su id correspondeinte.
Disculpa, no vi este mensaje cuándo estuve escribiendo el otro...

Estoy probando con lo que me pasaste y más o menos hace su función...
Estoy probando y tal asín con esto:

SELECT coins FROM login ORDER BY coins ASC LIMIT 10

Pero lo que quiero es que me muestre un top de los usuarios más ricos... osea de todos los registrados que hay quiero que me muestre los 5 usuarios con más coins... (osea sus coins).

Para ser especificos.

Un cordial saludo.
  #12 (permalink)  
Antiguo 18/02/2014, 15:24
Avatar de xSkArx  
Fecha de Ingreso: marzo-2008
Ubicación: Chile
Mensajes: 945
Antigüedad: 16 años, 2 meses
Puntos: 96
Respuesta: Resultado mayor

Cita:
Iniciado por TSG Ver Mensaje
Disculpa, no vi este mensaje cuándo estuve escribiendo el otro...

Estoy probando con lo que me pasaste y más o menos hace su función...
Estoy probando y tal asín con esto:

SELECT coins FROM login ORDER BY coins ASC LIMIT 10

Pero lo que quiero es que me muestre un top de los usuarios más ricos... osea de todos los registrados que hay quiero que me muestre los 5 usuarios con más coins... (osea sus coins).

Para ser especificos.

Un cordial saludo.
Utiliza la consulta que te proporciono gnzsoloyo, solo tienes que adaptarla a tus necesidades, si no puedes hacerlo leete el manual
__________________
Busca, lee y practica todo lo que puedas.
Usa siempre el buscador antes de postear.
Si posteas código, utiliza el HIGHLIGHT correcto.
  #13 (permalink)  
Antiguo 18/02/2014, 15:29
Avatar de TSG
TSG
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 373
Antigüedad: 10 años, 7 meses
Puntos: 9
Respuesta: Resultado mayor

Cita:
Iniciado por xSkArx Ver Mensaje
Utiliza la consulta que te proporciono gnzsoloyo, solo tienes que adaptarla a tus necesidades, si no puedes hacerlo leete el manual
Es lo que estoy intentando pero no me da resultado.
Solo me muestra el más grande.

Pero yo quiero que de 10 users se muestren los 5 coins más altos de esos 10 uses.

Saludos.
  #14 (permalink)  
Antiguo 18/02/2014, 16:19
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Resultado mayor

Cita:
Iniciado por TSG Ver Mensaje
(...)

Pero lo que quiero es que me muestre un top de los usuarios más ricos... osea de todos los registrados que hay quiero que me muestre los 5 usuarios con más coins... (osea sus coins).

(...)
Esto no es lo mismo que esto:


Cita:
Tengo un problema con mostrar los resultados más grandes...
Tengo un login que el usuario tiene coins y uno tiene 500 y otro 1000...
Trata de ser siempre específico en lo que tratas de obtener. El SQL y BBDD son áreas muy concretas, las cosas "parecidas" resultan en errores.

Vamos a ver.
Si lo que quieres es el conjunto de 5 valores máximos de un grupo de usuarios, diferenciados por usuario, necesitas si o si agrupar:
Código MySQL:
Ver original
  1. SELECT id, MAX(coins) coins
  2. FROM login
  3. ORDER BY coins DESC, id ASC
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #15 (permalink)  
Antiguo 19/02/2014, 14:31
Avatar de TSG
TSG
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 373
Antigüedad: 10 años, 7 meses
Puntos: 9
Respuesta: Resultado mayor

Listo ya está solucionado muchísimas gracias.

Un cordial saludo.

Etiquetas: mayor, php, resultado, select, sql
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:07.