¡Hola! Estoy buscando un poco de ayuda para modificar una consulta y que devuelva nombres de usuario en lugar de números de ID de usuario.
Esto es lo que he estado usando hasta ahora (modificado del excelente hilo Gráfico de red de @DavidGNavas):
WITH pairs AS (
SELECT p.user_id liked, pa.user_id liker
FROM post_actions pa
LEFT JOIN posts p ON p.id = pa.post_id
LEFT JOIN topics t ON t.id = p.topic_id
LEFT JOIN categories c ON c.id = t.category_id
WHERE post_action_type_id = 2
AND c.id = 47
)
SELECT liker liker_user_id, liked liked_user_id, count(*)
FROM pairs
GROUP BY liked, liker
ORDER BY count DESC
Luego he utilizado una búsqueda de referencia (vlookup) muy engorrosa para coincidir los nombres de usuario con los números de ID…
Una vez que tenga una lista de pares (quienes dan “me gusta” y quienes reciben) expresada como nombres de usuario, me permitirá seguir el método utilizado en el hilo del Gráfico de red para generar este tipo de gráficos, mostrando la actividad dentro de categorías específicas, ya que tenemos comunidades muy distintas en diferentes partes de nuestros foros:
Los gráficos en vivo son una forma valiosa de explorar nuestras diferentes subcomunidades, identificando rápidamente miembros influyentes y grupos de personas.
Por ejemplo, compare nuestra comunidad de músicos con la de diseñadores gráficos; hay una gran diferencia entre las dos ![]()
