9

このような関数が必要Oracleです。

パラメータに単純な日付を指定するとき。次に、関数は前月の最終日を取得する必要があります。

例:

FunctionName(10.02.2011) Result should be 31.01.2011

FunctionName(21.03.2011) Result should be 28.02.2011

FunctionName(31.07.2011) Result should be 30.06.2011 (Even date is last day of month)

どうやってやるの?ちなみに私は一度も使っていませんOracle

4

4 に答える 4

34
SELECT LAST_DAY(ADD_MONTHS(yourdate,-1))
于 2011-02-10T12:47:49.730 に答える
8

ここでの他の回答の代わりに、今月の最初の日の前日を取得して、前月の最後の日を見つけることもできます

SELECT trunc(your_date, 'MM')-1 as new_date from your_table

おそらくまだ使用をお勧めしlast_day(add_months(xxx,-1))ますが、代替案を示すだけです。

于 2011-02-10T14:00:42.190 に答える
4

select LAST_DAY(ADD_MONTHS(sysdate, -1)) from dual;

結果の日付を好きなようにフォーマットします(それはあなたに任せます;)

于 2011-02-10T12:47:49.150 に答える