Cómo calcular el promedio de votos positivos y negativos

  • Autor Autor pa3lo022
  • Fecha de inicio Fecha de inicio
P

pa3lo022

Gamma
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
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

  • Screenshot_3.webp
    Screenshot_3.webp
    6,1 KB · Visitas: 28
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
 
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 ?
 
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
 
avg te ayuda a sacar promedios
claro pero de una sola columna y yo necesito sacar de 2 columnas, el promedio de cada registro en 2 columnas distintas.
 
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
 
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?
 
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
 
Atrás
Arriba