次のフィールドを持つ親と子のコメントを持つコメントテーブルがあります
comments
comment_id
parent_id
thread_id (Foreign Key)
title
body
comment_date
user_name
最初に親コメントが表示され、次にその子コメントが表示され、次に親コメントが表示され、次にその子コメントが表示されるこのフォームのコメントを整理したい
次のクエリを使用しています
SELECT c1 . * , c2 . *
FROM comments c1
LEFT JOIN comments c2 ON c2.parent_id = c1.comment_id
WHERE c1.parent_id IS NULL
AND c1.thread_id =122
次の出力が得られます
最初のテーブルに非常に多くの重複行があることがわかります
次の出力が必要です
この出力では、最初に親コメント (parent_id に NULL を含む)、次にその子コメント、次に次の親コメント、そしてその子コメントが来ることがわかります。
この出力を取得するために SQL クエリを作成するにはどうすればよいですか。注: (2 番目の画像はクエリの結果ではありません。私の視点を明確にし、どのような出力が必要かを伝えるために変更しました。)