質問自体が間違って書かれている可能性があるので、誰かがそれを定義する方法をよりよく知っている場合は、質問を編集してください。
構造
重要な列のみ。
コメント
- comment_id
- comment_parent_id
- ユーザーID
- コメント_テキスト
投稿
- post_id
- ユーザーID
- post_text
comments_to_post (comments_to_foos、comments_to_bars、...)
- comment_id
- post_id (foo_id、bar_id、...)
comments_to_post
他のすべてのコメントは別のコメントの単なる子であるため、 on がcomment_parent_id
オンのコメントへの接続のみがあります。comments
NULL
post_id
結果として、特定の投稿 (by ) とその子に割り当てられたコメントが表示されるクエリに苦労しています。
どこから選択しcomments
て参加しようとしたのですが、 でつながっているだけなので、のコメントしか得られなかったのも不思議ではありません。comments_to_post
post_id = ?
NULL
comment_parent_id
comments_to_post
子であるコメントも結果に追加する方法は?
サンプルデータ:
コメント
comment_id comment_parent_id
1 NULL
2 1
3 1
4 NULL
5 4
投稿
post_id
10
20
コメントへの投稿
comment_id post_id
1 10
4 20
期待される結果
... where post_id = 10
comment_id
1
2
3