oracleのto_dateの落とし穴、MMを省略すると01ではなく当月が入る

もうタイトルそのままなんですが。

select to_date('201802','YYYYMM') from dual
→2018-02-01の日付が入る

select to_date('2018','YYYY') from dual
→実行日が8月なら、2018-08-01が入る

こちら、DDを省略すると「01」日が入るので、
MMも省略したら「01」月が入ると思い込んでいると、軽く痛い目を見ます。

ちなみにYYYYも省略すると、当年が入るため、

YYYY=省略は当年
MM=省略は当月
DD=01
HH24=00
MI=00
SS=00

ということになるようです。
なんていう落とし穴。


参考:
http://www.geocities.jp/oraclesqlpuzzle/8-24.html