非互換
FUJITSU Enterprise Postgres 11では、CREATE TABLE文のLIKE句オプションにてINCLUDING ALLを指定した場合、コピー元テーブルの拡張統計情報(STATISTICS)もコピーするように変更します。
INCLUDING ALL を指定しても、コピー元テーブルに設定された拡張統計情報(STATISTICS)はコピーしません。
[例]
=# \d t1
テーブル "public.t1"
列 | 型 | 照合順序 | Null 値を許容 | デフォルト
-----+---------+----------+---------------+------------
c1 | integer | | not null |
c2 | integer | | |
インデックス:
"t1_pkey" PRIMARY KEY, btree (c1)
統計オブジェクト:
"public"."statistics_t1" (ndistinct, dependencies) ON c1, c2 FROM t1
=#
=# CREATE TABLE t2 (LIKE t1 INCLUDING ALL);
CREATE TABLE
=# \d t2
テーブル "public.t2"
列 | 型 | 照合順序 | Null 値を許容 | デフォルト
-----+---------+----------+---------------+------------
c1 | integer | | not null |
c2 | integer | | |
インデックス:
"t2_pkey" PRIMARY KEY, btree (c1)INCLUDING ALL を指定した場合、コピー元テーブルに設定された拡張統計情報(STATISTICS)もコピーします。
[例]
=# \d t1
テーブル "public.t1"
列 | 型 | 照合順序 | Null 値を許容 | デフォルト
-----+---------+----------+---------------+------------
c1 | integer | | not null |
c2 | integer | | |
インデックス:
"t1_pkey" PRIMARY KEY, btree (c1)
統計オブジェクト:
"public"."statistics_t1" (ndistinct, dependencies) ON c1, c2 FROM t1
=#
=# CREATE TABLE t2 (LIKE t1 INCLUDING ALL);
CREATE TABLE
=# \d t2
テーブル "public.t2"
列 | 型 | 照合順序 | Null 値を許容 | デフォルト
-----+---------+----------+---------------+------------
c1 | integer | | not null |
c2 | integer | | |
インデックス:
"t2_pkey" PRIMARY KEY, btree (c1)
統計オブジェクト:
"public"."t2_c1_c2_stat" (ndistinct, dependencies) ON c1, c2 FROM t2対処方法
テーブルコピー時に拡張統計情報をコピーしたくない場合は、LIKE句オプションにてINCLUDING ALLを指定せずにコピーする属性を個別に指定してください。