Cita: a) Posee atributos que le sean propios y que no pertenezcan a otras entidades (tablas). seguro que no. Conceptualmente no sería necesario una tabla, solo pensaba en rendimiento.. y porque es más fácil crear una tabla que lo otro.. jeje
En realidad se cumple lo que yo te estoy diciendo:
Comentario, Opinión y Voto son entidades completamente distintas en el contexto e un foro, y por tanto deben existir. Representan cosas diferentes, aunque sus atributos sean todos FK e otras tablas.
De hecho, Voto tiene una relación
ternaria entre Usuario, Comentario y Voto, donde hay un discriminante que es la fecha de emisión o bien su propio ID, y donde comentario_id y usuario_id conforman un índice UNIQUE (no puede haber dos v otos de la misma persona para el mismo comentario).
Y en realidad, es mucho más fácil y más eficiente hacer una VIEW para tu caso, o bien una consulkta de construcción programática (dentro de la aplicación para parametrizarla cada vez que se use), que crear una tabla que debes mantener, como bien recalca quimfv, y donde si la cosa está mal hecha, tendrás a la larga problemas de consistencia.
Además, como ya te dijo él, el resultado de hoy es irrelevante, y una consulta parametrizable puede ser optimizada. Una tabla adicional
siempre afecta la performance global.