Ver Mensaje Individual
  #2 (permalink)  
Antiguo 11/09/2013, 05:56
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Count funciona mal al añadir un inner join

Siendo que la relación (correctamente planteada) entre usuarios y posts, es N:N, y lo que quieres es saber la cantidad de usuarios de cada post, y no su contenido, la tabla Posts es innecesaria. Eso por lo pronto.
Por otro lado, en ese contexto, si lo que quieres saber es cuántos usuarios participaron de esos posts (o hilos, más bien, por lo que parece), lo que debes contar es cuántos usuarios diferentes hay relacionados con ese post.
O sea:
Código MySQL:
Ver original
  1. SELECT u.nombre, u.id usuarios_id, COUNT(DISTINCT u.id) total
  2. FROM usuarios as u INNER JOIN post_usuarios as pu ON on u.id=pu.usuarios_id
  3. GROUP BY pu.id;
Trata de no relacionar más tablas de las que efectivamente devolverán los datos buscados. Poner más sólo generara problemas de performance, pero no ayudará en nada.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)