Note

複数のイベントをユーザーがもつ状態に対して一番新しい or 古いイベントを特定する。 例えばECサイトにおける一番新しい購入 or 古い購入を算出するなど。

実装

基本的にTimstampDateTimeの型であればmaxmin関数が使えるので簡単に判別できる。

-- 顧客毎の直近の購入と初めての購入の日付を算出する
 
select 
	customer_id
	min(created_at) as first_order
	, max(created_at) as latest_order
from order
group by customer_id