1

前月の最終日を取得したい。

このようなもの:

FunctionName(10.02.2011) Result should be 31.01.2011

この質問questionで提案されているようにoracle、関数を使用してそれを行うことができます。で同じことを行う同様の機能はありますか。last_day()Netezza Database

4

5 に答える 5

4

last_day()Netezza に存在します (どのバージョンを使用しているかは不明)

select extract(day from last_day(to_date('20121001','YYYYMMDD') - interval '1 month' ));
 DATE_PART 
-----------
        30
于 2012-11-20T18:53:12.990 に答える
0

select extract(day from (select (last_day(to_char(current_timestamp,'dd/mm/yyyy')))))) を選択します。

于 2012-12-06T12:12:21.963 に答える
0

ゴードンの答えと同様に、これを NZ 6 でテストしたところ、現在の日付から現在の日 # を減算することで前月の最終日を取得できます。current_timestamp日付フィールドに置き換えることができます。

select current_timestamp, current_timestamp - extract(day from current_timestamp)

結果:

2012-10-05 13:35:05 2012-09-30 00:00:00
于 2012-10-05T17:32:49.570 に答える
0

Netezza は利用できませんが、次の方法でうまくいく可能性があります。

select <date> - datepart('day', <date>) - 1

これにより、その月の現在の日が日付から減算され、さらに 1 日が前の月の最終日に戻されます。

これは、次の方法でも実行できます。

select date(current_Date) - datepart('day', current_Date) - 1

現在の日付。

于 2012-09-29T14:15:14.940 に答える
0

Netezza の場合、add_month() および last_day() 関数を使用して結果を取得します。たとえば、「2013-01-01」とします。

select last_day(add_month('2013-01-01',-1));

結果: 2013-12-31

于 2013-10-29T03:52:40.627 に答える