2016-05-26 5 views
1

値:コメント 列は次のとおりです。AUTHOR_ID、ID、PARENT_ID、タイムスタンプマージTABLEは、私は単一のテーブルを持っている

例:

author_id, id, parent_id, timestamp 
1, 1, NULL, 12:00 << this is the original post 
2, 1234, 1, 12:04 << this is a reply made 4 minutes after 
3, 5678, 1, 12:05 << this is another reply 

すべての返信は、彼らの 'PARENT_ID' としてOPの 'ID' を共有して

私が望むのは、すべての会話(OPと返信)が上記のように順序付けられるように、単一のテーブルまたはビューです。私が今持っているのは、時間によって順序付けられたすべてのコメント(OPと返信)のリストです。そのため、重複する会話がたくさんあります。私は会話を結びつける必要がありますが、参加としてではなく、それぞれの返答ごとに各OPの繰り返しを与え、必要な列を2倍にするためです。会話がidとPARENT_IDにより、新たなidが新しい会話の開始を意味することにリンクされていると仮定すると

おかげ

答えて

1

。 あなたは次のように書くことができます:

select 
    ISNULL(parent_id, id) as ConversationId, 
    * 
from 
    Comments 
order by ConversationId, timestamp 
関連する問題