非互換
FUJITSU Enterprise Postgres 9.6では、extract関数において、無限大のタイムスタンプを入力した場合の戻り値を変更します。
抽出するフィールドの種別にかかわらず、0を返却します。
[例]
=# SELECT extract(year from TIMESTAMP 'infinity');
date_part
-----------
0
(1 row)
=# SELECT extract(month from TIMESTAMP 'infinity');
date_part
-----------
0
(1 row)
抽出するフィールドが単調増加するもの(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)
対処方法
ありません。