非互換
FUJITSU Enterprise Postgres 14では、LIMIT句使用時において、PostgreSQL側からOracle側へプッシュダウンするよう変更します。
Oracle query側ではLIMIT句が外された状態で実行されます。
[例]
contrib_regression=# EXPLAIN (COSTS off) SELECT d FROM typetest1 LIMIT 2; QUERY PLAN -------------------------------------------------------------------------------- Limit -> Foreign Scan on typetest1 Oracle query: SELECT /*272655bdd593a539434c24523500a6ac*/ r1."D" FROM " TYPETEST1" r1 (3 行)
contrib_regression=# SELECT d FROM typetest1 LIMIT 2; d --------------- 1968-10-20 0044-03-15 BC (2 行)
Oracle query側でLIMIT句をFETCH FIRST n ROWS ONLYに変換して実施します。
[例]
EXPLAIN (COSTS off) SELECT d FROM typetest1 LIMIT 2; QUERY PLAN ------------------------------------------------------------------------------------------------------ Limit -> Foreign Scan on typetest1 Oracle query: SELECT /*f04d370c8510559c215152b699b07ac5*/ r1."D" FROM "TYPETEST1" r1 FETCH FIRST 2 ROWS ONLY (3 行) SELECT d FROM typetest1 LIMIT 2; d --------------- 10-21-1968 03-15-0044 BC (2 行)
対処方法
ありません。