Consulta del recuento de votos actual

Hola, soy completamente nuevo en SQL.

Quiero obtener una lista de “cuántos usuarios” han emitido “cuántos votos”. En nuestra instancia, tenemos un límite de 10 votos por persona. La tabla resultante se vería así:

Número de votos Número de usuarios
10 25
9 32
8 43
(etc)

En lo que es mi primer SQL, esto es hasta dónde he llegado:

SELECT user_id, count(user_id)
FROM discourse_voting_votes
GROUP BY user_id
ORDER BY count DESC

Esto da como resultado una lista de usuarios ordenados por el número de votos emitidos. Al menos con esto puedo calcular manualmente el resultado deseado, pero es tedioso y propenso a errores.

2 Me gusta

Me temo que esta también es mi primera consulta SQL, así que veremos cómo va… :slightly_smiling_face: pero ¿sirve de algo?

WITH votes AS (
    SELECT user_id, count(user_id) as Number_of_Votes
    FROM discourse_voting_votes dvv
    WHERE dvv.archive = false
    GROUP BY user_id
    ORDER BY Number_of_Votes DESC
)
SELECT Number_of_Votes, count(*) AS Number_of_Users
FROM votes
GROUP BY Number_of_Votes
ORDER BY Number_of_Votes DESC
3 Me gusta

¡PERFECTO! ¡Muchas gracias! Por el script y la pequeña lección de SQL. Espero que esto también te haya sido útil.

Apuesto a que esta consulta será útil para otros. En nuestro caso, queremos mostrar esta distribución de votos para que nuestros voluntarios sean más conscientes de cuánto / cuánto poco uso están haciendo de sus votos en comparación con otros compañeros. El objetivo final es aumentar el número de votos utilizados.

3 Me gusta

Me alegra mucho que funcionara. :+1: Llevaba tiempo queriendo practicar con el explorador de datos y esta me pareció una oportunidad perfecta, así que en realidad debería ser yo quien te diera las gracias. :slightly_smiling_face:

Añadí la línea ‘archive = false’ para restringir los resultados al total de votos actuales de un usuario, y no incluir los históricos. Creo que es lo correcto para tu caso de uso, pero elimínala si quieres un ‘gran total’.

Gracias de nuevo. :+1::slightly_smiling_face:

2 Me gusta

Ah, no tenía idea de qué era esto. Sí, esto encaja con la consulta que estaba buscando. Gracias de nuevo, ya estamos utilizando estos datos.

1 me gusta

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.