[ORACLE]指定日付の月末を取得する

投稿日:

LAST_DAYで月末を取得する

LAST_DAYを使います。

実際、仕様で、ある項目には月末を入力させるとか、翌月1日を指定するとかいうのが指定されたりします。

細かく計算してると正直面倒くさいですが、このLAST_DAYを使えば、28日だの30日だの31日だのを月を考慮する必要なく返してくれるので便利。

更に、うるう年もちゃんと29日と返してくれる。

使ってみる

例えば、今月末を取得したかったら、

select last_day(sysdate)  as last_day
from dual;

実行結果はこうなる。

うるう年も、

select last_day(to_date('2020/02/28')) as last_day
from dual;

この通り。

自動で計算してくれる。

翌月1日を取得したかったら、「+1」してやれば良い。

select last_day(to_date('2020/02/28')) + 1  as last_day
from dual;

実行結果はこうなる。

簡単でよい。


							







-ORACLE
-,

関連記事

[ORACLE]ORA-01950: 表領域’USERS’に対する権限がありません。のエラー対処法

  Oracle 12c R2(R1でも同様のエラーが発生)で ORA-01950: 表領域’USERS’に対する権限がありません のエラーが発生しました。 状況とし …

[ORACLE]SQLのIN句にパラメータを適用する方法

カンマ区切りの文字列を取得した理由 こないだの続きです。 日本の中心付近で仕様変更と闘うSE日記[C#]リストをカンマ区切りの文字列で出力するhttp://ht-jp.net/blog/pc/c/c- …

ORACLEでDELETEとTRUNCATEのどちらを使うか。

未だに迷う。 例えば、テーブル全件削除をしたいときは delete * from tableA; delete文なら、こうだし。 truncate tableA; truncate文なら、こう。

no image

OracleでLISTAGG関数を使ったら、世界が変わった話。

11gR2からGROUP_CONCAT(複数行をまとめて1列に)が可能に http://d.hatena.ne.jp/kkz_tech/20150311/1426048592 日本の中心付近で仕様変更 …

[ORACLE]今接続しているサーバー・スキーマとかを確認する

Oracle使ってる時に、今どのサーバーに繋いでるの?とか、今どのスキーマに繋いでるの? ってなるとき無いですか? そんなときの確認法。 今、どのサーバーに接続してるんだ? 先日の仮想マシンにOrac …


カテゴリー