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

2.2.55 冗長なグループキーの削除

非互換

GROUP BY句やDISTINCT句を使用したSQLを実行時に、冗長なグループキーを削除します。

Fujitsu Enterprise Postgres 15以前の場合

Fujitsu Enterprise Postgres 15では、グループキーについて、"pagg_tab1.x, pagg_tab1.y"の両方が出力されます。

[例]
postgres=# EXPLAIN (COSTS OFF)
postgres-# SELECT a.x, a.y, count(*) FROM (SELECT * FROM pagg_tab1 WHERE x = 1 AND x = 2) a LEFT JOIN pagg_tab2 b ON a.x = b.y GROUP BY a.x, a.y ORDER BY 1, 2;
              QUERY PLAN
---------------------------------------
 GroupAggregate
   Group Key: pagg_tab1.x, pagg_tab1.y
   ->  Sort
         Sort Key: pagg_tab1.y
         ->  Result
               One-Time Filter: false
(6 rows)
Fujitsu Enterprise Postgres 16の場合

Fujitsu Enterprise Postgres 16では、グループキーについて、"pagg_tab1.y" の1つのみが出力されます。

[例]
postgres=# EXPLAIN (COSTS OFF)
postgres-# SELECT a.x, a.y, count(*) FROM (SELECT * FROM pagg_tab1 WHERE x = 1 AND x = 2) a LEFT JOIN pagg_tab2 b ON a.x = b.y GROUP BY a.x, a.y ORDER BY 1, 2;
              QUERY PLAN
--------------------------------------
 GroupAggregate
   Group Key: pagg_tab1.y
   ->  Sort
         Sort Key: pagg_tab1.y
         ->  Result
               One-Time Filter: false
(6 rows)

対処方法

ありません。