Ayuda con una query por favor

pa3lo022

Gamma
Verificación en dos pasos desactivada
Desde
24 Nov 2014
Mensajes
235
Crédito(s)
0
Puntos
80
Hola buenos dias,
Me podrian dar una mano con una query, no se como encararla y es muy simple.
Tengo 2 columnas "votos positivos" y "votos negativos" quisiera hacer un promedio de todos los registros y traer el mayor, no se si me explico.
Dejo una imagen de las 2 columnas

Muchas gracias
 

Adjuntos

pa3lo022

Gamma
Verificación en dos pasos desactivada
Desde
24 Nov 2014
Mensajes
235
Crédito(s)
0
Puntos
80
Puedes usar:

Insertar CODE, HTML o PHP:
SELECT MAX( votes_positive )  FROM tabla
claro la cosa ahi es que puede haber alguien que tiene mucho vos positivo y muchos negativos y ahi me va a traer ese, que de echo es lo que pasa, necesito sacar un promedio entre las 2 columnas, positivos y negativos
 

Alex Cachi

Eta
Programador
Verificación en dos pasos desactivada
Desde
28 Ene 2014
Mensajes
1.395
Crédito(s)
0
Puntos
13
claro la cosa ahi es que puede haber alguien que tiene mucho vos positivo y muchos negativos y ahi me va a traer ese, que de echo es lo que pasa, necesito sacar un promedio entre las 2 columnas, positivos y negativos
Para entender mejor necesitas obtener el mayor promedio de votos positivos y el mayor promedio de votos negativos? Es decir 2 números ?
 

pa3lo022

Gamma
Verificación en dos pasos desactivada
Desde
24 Nov 2014
Mensajes
235
Crédito(s)
0
Puntos
80
Para entender mejor necesitas obtener el mayor promedio de votos positivos y el mayor promedio de votos negativos? Es decir 2 números ?
No, perdon no he sido claro.

Necesito obtener:
(votes_positive *100) / (votes_positive + votes_negative)
de ese resultado obtener el mayor
 

UriRM

Curioso
Verificación en dos pasos desactivada
Desde
19 Dic 2019
Mensajes
8
Crédito(s)
0
Puntos
0
No, perdon no he sido claro.

Necesito obtener:
(votes_positive *100) / (votes_positive + votes_negative)
de ese resultado obtener el mayor
Hola amigo. la verdad es que analice tu primer mensaje y la verdad es que al igual que muchos no entiendo lo que necesitas o lo que realmente quieres obtener. A traves del calculo que mencionas, no me cuadra la informacion con respecto al promedio. Lo que han respondido los demas usuarios es correcto y obtiene los valores, pero creo que necesitamos saber de forma visual cual es el valor que se deberia obtener acorde al calculo.

Yo cuando entiendo un promedio es algo similar a esto: tengo 4 valores: 23, 45, 16, 32. Ahora de esos valores necesito obtener el promedio, entonces ahi es en donde me sirve una formular simple y que todos conocemos:

[(valor1 + valor2 + valor3 + valor4) / cantidad_de_valores]
en la formula de arriba: (23+45+16+32) / 4

De acuerdo a lo anterior, lo que entiendo que se debe obtener es lo siguiente:
SUMA(votos_positivos) / (SUMA(votos_positivos) + SUMA(votos_negativos))
con esto obtienes un promedio de acuerdo al universo general de votantes, y el multiplicarlo por 100 es para obtener un procentaje de votantes que votaron positivamente. Para poder obtener cual es el valor que se acerca mas al promedio, tendria que ser el valor del promedio y analizar cual es el valor mas cercano.

Comentame si es lo que necesitas, o de lo contrario seria bastante utili que de la misma imagen que subiste al comienzo, puedas mencionarnos cual es el valor correcto que deberia resultar de toda la operacion.

Saludos amigo
 

igiadas

Beta
Verificación en dos pasos desactivada
Desde
8 Oct 2016
Mensajes
84
Crédito(s)
0
Puntos
78
Por la fórmula que pones entiendo que quieres recuperar los registros ordenados de tal manera que se muestran los que tienen un mayor porcentaje de votos positivos. Por ejemplo, si tenemos 2 registros, el primero con 50 positivos y 20 negativos y el segundo con 30 positivos y 0 negativos, la primera fila que devuelve la consulta debería ser el segundo, ya que tiene 100% de positivos aunque tenga menos votos que el otro.

¿Es esto lo que quieres?
 

jmdoren

Gamma
Verificación en dos pasos desactivada
Verificado por Whatsapp
Desde
31 May 2016
Mensajes
447
Crédito(s)
0
Puntos
0
Si es para una tarea o para pocas filas puedes usar esto
SELECT ..... votes_positive, (votes_positive *100) / (votes_positive + votes_negative) AS factor FROM tabla ORDER BY factor....
Si es un ambiente de muchas transacciones y deseas un resultado muy rápido puedes crear una columna indexada y un trigger que la mantenga actualizada siempre
 

Arriba