0
バックグラウンドによっては、ユーザーが実行したアクションの数をカウントし、date_trunc()を使用してこれらのアクションを月単位でグループ化するテーブルをpgSQL9.5に作成しています。個々のアクションのカウントはこの形式以下、別々のテーブルに分かれています。理想的にはpgSQL:2つの列の完全な外部結合によって行が省略されています
Feedback_Table: Comments_Table:
id | month | feedback_counted id | month | comments_counted
----+---------+------------------- ----+---------+-------------------
1 | 2 | 3 1 | 4 | 12
1 | 3 | 10 1 | 5 | 4
1 | 4 | 7 1 | 6 | 57
1 | 5 | 2 1 | 7 | 12
、私はFULL OUTERが同じで、「ID」と「月」列でのこれらのテーブルのJOINをやりたいですこのクエリを、時間と生産:これは私の現在のステートメント、ノートで
Rollup_Table:
id | month | feedback_counted | comments_counted
----+---------+--------------------+-------------------
| | |
| | |
1 | 4 | 7 | 12
1 | 5 | 2 | 4
1 | 6 | | 57
1 | 7 | | 12
:
Combined_Table:
id | month | feedback_counted | comments_counted
----+---------+--------------------+-------------------
1 | 2 | 3 |
1 | 3 | 10 |
1 | 4 | 7 | 12
1 | 5 | 2 | 4
1 | 6 | | 57
1 | 7 | | 12
しかし、私の現在のクエリは、このようなようにそれを表示し、フィードバック日付をキャプチャしていませんそれはmonthの代わりにdate_truncを使用しています。私は後でアクションカウントを追加し、主な問題はここのどこかにあります。
CREATE TABLE rollup_table AS
SELECT c.id, c.date_trunc
FROM comments_counted c FULL OUTER JOIN feedback_counted f
ON c.id = f.id AND c.date_trunc = f.date_trunc
GROUP BY c.id, c.date_trunc, f.id, f.date_trunc;
私はSQLで初心者のビットだと任意の助けをいただければ幸い、この問題を解決する方法がわからないです。
、おかげで働いていました! –