ページの先頭行へ戻る
Symfoware Server V12.4.0 移行ガイド(OpenインタフェースからSymfoware Server (Postgres)への移行)
FUJITSU Software

Solaris3.3.27 無限大のタイムスタンプを入力した場合のextract関数の戻り値の変更

非互換

Symfoware Server (Postgres)では、extract関数において、無限大のタイムスタンプを入力した場合の戻り値を変更します。

Symfoware Server (Openインタフェース)の場合

抽出するフィールドの種別にかかわらず、0を返却します。

[例]

=# SELECT extract(year from TIMESTAMP 'infinity');
 date_part
-----------
         0
(1 row)
=# SELECT extract(month from TIMESTAMP 'infinity');
 date_part
-----------
         0
(1 row)
Symfoware Server (Postgres)の場合

抽出するフィールドが単調増加するもの(year、century、decade、epoch、isoyear、millennium)であれば無限大を返却し、そうでないものはNULLを返却します。

[例]

=# SELECT extract(year from TIMESTAMP 'infinity');
 date_part
-----------
  Infinity
(1 row)
=# \pset null NULL
=# SELECT extract(month from TIMESTAMP 'infinity');
 date_part
-----------
      NULL
(1 row)

対処方法

ありません。