elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  Bases de Datos (Moderador: Carloswaldo)
| | | |-+  Seleccionar el valor mas alto de una columna y que muestre la información
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Seleccionar el valor mas alto de una columna y que muestre la información  (Leído 1,990 veces)
glmalpica

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Seleccionar el valor mas alto de una columna y que muestre la información
« en: 21 Noviembre 2019, 19:44 pm »

Buenas Tardes
Tengo un problema

En una tabla de MySQL tengo 4 campos, ID, Nombre, Fecha, Calificacion,  en esta tabla se registran las calificaciones por día de N participantes, por lo que el "Nombre" aparece varias veces, necesito saber que día se obtuvo la calificación mas alta, para lo cual estoy usando la sentencia:  select Nombre, Fecha, MAX(Calificacion) as Calificacion from evento  where Nombre = 'Panchito' group by Nombre;

con esto obtengo, el Nombre correcto, la primera fecha que aparece en los registros, no la correcta y el valor máximo, ¿como puedo obtener la fecha en que se obtuvo el valor máximo?
Gracias



En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Seleccionar el valor mas alto de una columna y que muestre la información
« Respuesta #1 en: 21 Noviembre 2019, 19:51 pm »

Código:
select Nombre, Fecha, MAX(Calificacion) as Calificacion from evento  where Nombre = 'Panchito' group by Nombre;


hay que tener cuidado con group by, no siempre ordena todo como se espera...

creo que con el MAX ya te lo limitaría a un solo resultado ya que hay solo un maximo...



en caso de darte mas de un resultado como solo te importa el primero, puedes usar LIMIT 1 de la siguiente manera

Código:
select Nombre, Fecha, MAX(Calificacion) as Calificacion from evento  where Nombre = 'Panchito' LIMIT 1;



En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
glmalpica

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: Seleccionar el valor mas alto de una columna y que muestre la información
« Respuesta #2 en: 21 Noviembre 2019, 22:29 pm »

Gracias, sigo obteniendo el mismo resultado, el nombre es el correcto, la fecha no, me pone la primera que encuentra con ese nombre, el valor máximo es correcto, la tabla es la siguiente:

Nombre   Fecha   Calificacion
Panchito   04/04/2019   23.4
Panchito   07/04/2019   25.3
Panchito   22/04/2019   22.2
Panchito   04/05/2019   21
Panchito   12/05/2019   26.4
Panchito   04/06/2019   24.3
Panchito   16/06/2019   19.9
Panchito   22/06/2019   22.8
Panchito   09/07/2019   21.4
Panchito   18/07/2019   24.4
Panchito   15/08/2019   25.3
Panchito   28/08/2019   20.9
Panchito   05/09/2019   23.8
Panchito   04/10/2019   21.2
Panchito   12/11/2019   22.6
Panchito   14/11/2019   24.7


el resultado es el siguiente:

Nombre   Fecha   Calificacion
Panchito   04/04/2019   26.4


el resultado correcto debe ser:

 Nombre   Fecha   Calificacion
Panchito   12/05/2019   26.4

Gracias
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Seleccionar el valor mas alto de una columna y que muestre la información
« Respuesta #3 en: 22 Noviembre 2019, 00:17 am »

entonces puedes usar con order by


Código:
select Nombre, Fecha, Calificacion from evento  where Nombre = 'Panchito' ORDER BY Calificacion DESC LIMIT 1
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Seleccionar el valor mas alto de una columna en MySQL
PHP
WHK 2 23,423 Último mensaje 27 Octubre 2008, 01:04 am
por WHK
Menor valor en una columna de un Msflexgrid
Programación Visual Basic
magomi 6 5,088 Último mensaje 24 Octubre 2009, 06:06 am
por seba123neo
javascript: seleccionar valor de una clase dentro de un div
Desarrollo Web
JonaLamper 5 4,166 Último mensaje 24 Septiembre 2016, 17:56 pm
por ivancea96
Ayuda!!! Cálculo el valor entero(atributo) mas alto en un array
Java
afrocardo 2 2,244 Último mensaje 27 Febrero 2017, 15:18 pm
por afrocardo
El bitcoin alcanza su valor más alto en año y medio: estas son las causas
Noticias
wolfbcn 0 1,232 Último mensaje 26 Junio 2019, 21:38 pm
por wolfbcn
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines