2
REFER:postgresql: ordered resultPostgreSQL:注文結果 - II
私はこの質問をし、答えを受け入れました。まあ、私は心の中で何か違うものを求めていましたが、私は受け入れられた答えによって確信していました。さて、私は最近、受け入れられた答えは私が望むものではないことに気付きました。まあ、私は質問を修正再表示しています:
私がどのように見える表ました:
id | user_id | activity_id | activity_type | root_id | is_root | timestamp
----+---------+-------------+---------------+---------+---------+-----------
1 | 1 | 1 | text | 1 | 1 | 200
2 | 2 | 2 | text | 1 | 0 | 206
3 | 3 | 3 | text | 1 | 0 | 210
4 | 2 | 10 | text | 10 | 1 | 50
5 | 1 | 11 | text | 10 | 0 | 90
6 | 3 | 12 | text | 10 | 0 | 100
7 | 3 | 20 | text | 20 | 1 | 120
8 | 2 | 21 | text | 20 | 0 | 130
9 | 3 | 22 | text | 20 | 0 | 150
10 | 3 | 22 | text | 20 | 0 | 150
11 | 3 | 22 | text | 20 | 0 | 190
私が探している出力は次のとおりです。
id | user_id | activity_id | activity_type | root_id | is_root | timestamp
----+---------+-------------+---------------+---------+---------+-----------
1 | 1 | 1 | text | 1 | 1 | 200
2 | 2 | 2 | text | 1 | 0 | 206
3 | 3 | 3 | text | 1 | 0 | 210
7 | 3 | 20 | text | 20 | 1 | 120
8 | 2 | 21 | text | 20 | 0 | 130
11 | 3 | 22 | text | 20 | 0 | 150
9 | 3 | 22 | text | 20 | 0 | 150
10 | 3 | 22 | text | 20 | 0 | 190
4 | 2 | 10 | text | 10 | 1 | 50
5 | 1 | 11 | text | 10 | 0 | 90
6 | 3 | 12 | text | 10 | 0 | 100
- ROOT_IDをグループの最初の行にはis_root = 1を設定する必要があります。
- グループはルートDESCのタイムスタンプに基づいてソートする必要がありますが、rootの子LDはASC(タイムスタンプベース)
The relevant columns for the question is root_id, is_root, timestamp.
任意の助けを理解されソートさ。
おかげ
入力が間違っています。入力ID#7は120にする必要があります。ありがとうございます。 – Mayank
+1の正しい解決策:) –