私はpostgresの初心者で、毎月(グループ化して)最初の行を取得したいと思っていますが、どうすればよいかわかりません。
私のテーブルorder
は以下の通りです:
order_id | cust_id | order_date
------------------------------------------------
order1 | cust1 | January 19, 2020, 1:00 PM
order2 | cust1 | January 30, 2020, 2:00 PM
order3 | cust1 | February 20, 2020, 3:00 PM
order4 | cust1 | February 28, 2020, 4:00 PM
order5 | cust2 | February 27, 2020, 4:00 PM
期待される結果は次のようになります。
order_id | cust_id | order_date
------------------------------------------------
order1 | cust1 | January 19, 2020, 1:00 PM
order3 | cust1 | February 20, 2020, 3:00 PM
order5 | cust2 | February 27, 2020, 4:00 PM
しかし、以下のクエリを使用して上記の結果を取得できませんでした。取得した結果は表と同じです。
select distinct on (order_date)cust_id, order_date, order_id from order
group by delivery_date, customer_id, delivery_id
order by delivery_date asc