クライアントIDごとに最新の2つの日付を返す必要があります。12345と112233があり、それぞれについて、これを返すはずの関数を作成する必要があります。
id | client_id | created | log
----+-----------+---------------------+------------
1 | 12345 | 2019-05-02 12:01:10 | SOMETEXT1
2 | 12345 | 2019-05-02 12:09:01 | SOMETEXT11
3 | 112233 | 2019-05-01 13:10:12 | SOMETEXT2
4 | 112233 | 2019-05-02 09:45:50 | SOMETEXT23
(4 rows)
これを返すことになっている
> id | client_id | created | log
> ----+-----------+---------------------+------------
4 | 112233 | 2019-05-02 09:45:50 | SOMETEXT23
2 | 12345 | 2019-05-02 12:09:01 | SOMETEXT11
(2 rows)
Postgresでの最良の方法はdistinct on
:
select distinct on (client_id) t.*
from t
order by client_id, created desc;
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加