【PostgreSQL】日付操作まとめ

2020年6月29日

スポンサーリンク

日付操作

1.現在日時の取得

select * from current_date;      --"2020-06-11"
select * from current_time;      --"22:00:00.000000+09"
select * from now();             --"2020-06-11 22:00:00.000000+09"
select * from current_timestamp; --"2020-06-11 22:00:00.000000+09"
--now()とcurrent_timestampの違いはありません

 

2.日付の書式設定(to_char)

select * from to_char(now(),'YYYY/MM/DD');  --2020/04/01
select * From to_char(now(), 'HH:MI:SS');   --10:34:56(12時間表記)
select * from to_char(now(), 'HH24:MI:SS'); --22:34:56(24時間表記)
select * from to_char(now(),'YYYY/MM/DD HH24:MI:SS'); --2020/04/01 22:34:56

 

3.月、週、日、時刻を加算する

select current_date + cast('5 months' as INTERVAL);  --"2020-11-12 00:00:00"
select current_date + cast('5 weeks' as INTERVAL);   --"2020-07-17 00:00:00"
select current_date + cast('5 days' as INTERVAL);    --"2020-06-17 00:00:00"
select current_date + cast('5 hours' as INTERVAL);   --"2020-06-12 05:00:00"
select current_date + cast('5 minutes' as INTERVAL); --"2020-06-12 00:05:00"
select current_date + cast('5 seconds' as INTERVAL); --"2020-06-12 00:00:05"

 

4.曜日を取得する(date_part)

select date_part('dow',current_date); --0:日、1:月、2:火、3:水、4:木、5:金、6:土

 

5.月末の日を取得する

select date(date_trunc('month',current_date) + '1 month' + '-1 day') --2020/6/30

 

6.こちらもチェック(自作関数)

日付であるかのチェック(IsDate)  西暦から和暦へ変換する  次の○曜日を求める

 

 

この他にもPostgreSQLのまとめをしています↓

お気に入りに!「こんな時どう書くんだっけ?」の構文・SQLのまとめ