私たちのデータベースは、次のようなスキーマ統計を収集するように設定されています
method_opt => 'for all columns size auto'
問題は、この方法では、ヒストグラムを生成しないほうがよい列にもヒストグラムが割り当てられることです。これらの列に例外を設定する方法はありますか (他の列の自動サイズはそのままにしておきます)?
理論的根拠: 一部の (索引付けされた) 列は VARCHAR2(100) ですが、最初の 50 文字はほぼ同じです。最初の 50 文字の間に異なる値が 10 未満あります。列の統計が収集されると、ヒストグラムが生成されます。しかし、ヒストグラム生成では VARCHAR2 列の最初の 30 文字しか分析されないため、完全に間違ったヒストグラムになります。(実際、値はほぼ均一に分布しています。)
編集:私の考えは、「すべての列のサイズは自動ですが、列(ECID)のサイズは1」のようなものを使用することです。しかし、これが可能かどうかはわかりません。method_opt 構文はあまり明確ではありません。