php mysql double jointure interne

Donc, j'ai 3 tables

postes

  • id
  • post_id
  • user_id

commentaires

  • id
  • post_id
  • comment_id
  • user_id
  • supprimé

réponses

  • id
  • post_id
  • reply_id
  • user_id
  • supprimé

j'essaie de le faire tous les commentaires et les réponses de chaque post.post_id avec la poste.user_id=x

j'ai essayé

    SELECT *
    FROM posts AS p
    INNER JOIN comments as c
    ON c.comment_id=p.post_id
    INNER JOIN replies as r
    ON r.reply_id=p.post_id
    WHERE
    p.user_id='x'

qui renvoie 0...

MODIFIER


solution a été

SELECT *
FROM POSTS A
LEFT JOIN COMMENTS B ON A.POST_ID=B.COMMENT_ID
LEFT JOIN REPLIES C ON A.POST_ID=C.REPLY_ID
WHERE A.USER_ID='X'

donc, si j'ajoute une suppression de la colonne des commentaires et des réponses tables, comment puis-je vérifier si le commentaire ou la réponse que j'obtiens n'est pas supprimé?

j'ai essayé d'ajouter après A.USER_ID='X' && B.deleted='0' && C.deleted='0'

mais renvoie 0.

modifier la * de domaines précis, il aura plus de sens pour vous
je suis en train d'essayer d'obtenir le montant total des lignes de cette requête... donc si je veux obtenir certaines colonnes, devrais-je ajouter, au lieu de * afin de faire, je travail?

OriginalL'auteur fxuser | 2011-06-04