1

私は次のテーブル(raw_data)を持っています:

trans_id,user_id,msg_code,record_time

時間枠 (from_time,to_time) が与えられた場合、クエリを実行したいと思います: ユーザーごとに取得: 各タイプの最後の msg_code を取得します。

詳細説明: ユーザーごとに一意の msg_code を受け取りたいので、そのような各行がユーザーごとの最後の (record_time に関して)

テーブルの例 (trans_id、user_id、msg_code、record_time):

1, 1, 100, 2013-06-03 08:32:51
2, 1, 100, 2013-06-03 09:32:51
3, 1, 101, 2013-06-03 08:32:51
4, 1, 102, 2013-06-03 10:32:51
5, 2, 100, 2013-06-03 06:32:51
6, 2, 100, 2013-06-03 07:32:51
7, 2, 100, 2013-06-03 08:32:51

結果の例:

2, 1, 100, 2013-06-03 09:32:51
3, 1, 101, 2013-06-03 08:32:51
4, 1, 102, 2013-06-03 10:32:51
7, 2, 100, 2013-06-03 08:32:51

無駄な試み(うまくいかない..):

SELECT DISTINCT ON (user_id,msg_code)
       *
FROM  raw_data
ORDER BY user_id, msg_code ASC
  • ご不明な点がございましたら、お問い合わせください。

ご協力いただきありがとうございます!

4

1 に答える 1