ページの先頭行へ戻る
Enterprise Postgres 17 リリース情報

2.2.19 FROM句にRECORDを返却する関数を指定した場合の挙動の変更

非互換

Fujitsu Enterprise Postgres 16 SP1では、FROM句にRECORDを返却する関数を指定した場合の挙動を変更します。これにより、誤った列数を期待したSQLを実行した場合に、エラーになります。

Fujitsu Enterprise Postgres 16以前の場合
postgres=#  with a(b) as (values (row(1,2,3)))
postgres-#  select * from a, coalesce(b) as c(d int,e int);
    b    | d | e
---------+---+---
 (1,2,3) | 1 | 2
(1 row)
Fujitsu Enterprise Postgres 16 SP1の場合
postgres=# with a(b) as (values (row(1,2,3)))
postgres-#  select * from a, coalesce(b) as c(d int,e int);
ERROR:  function return row and query-specified return row do not match
DETAIL:  Returned row contains 3 attributes, but query expects 2.

対処方法

ありません。