Teradata Database メッセージ 6852 - 6852 - Advanced SQL Engine - Teradata Database
Teradata Vantage™ - Database Messages
- Product
- Advanced SQL Engine
- Teradata Database
- Release Number
- 17.00
- Published
- 2020年6月
- ft:locale
- ja-JP
- ft:lastEdition
- 2020-09-17
- dita:mapPath
- ja-JP/vza1585613049811.ditamap
- dita:ditavalPath
- ft:empty
- dita:id
- vza1585613049811
- NMT
- yes
- Product Category
- Software
- Teradata Vantage
- メッセージ
- PARTITIONS WHERE clause needs to be simplified
- 説明
- ユーザーは、選択パーティションのアーカイブまたは復元操作を実行しようとしていますが、パーティションを定義するPARTITIONS WHERE条件ではすべてのパーティションが選択されています。また、復元に対してALL PARTITIONS句が指定されている場合には、適切に定義されているアーカイブからの境界条件が、表の現在のパーティション化と互換性がありません。これは、条件が参照している列がパーティション列ではない場合や、条件が表の現在のパーティション化と互換性がない場合に起こります。ALL PARTITIONSでは、境界条件が適切に定義されている場合であっても、パーティション化変更のために表のパーティション化が大きく変化したときには、このエラーが発生することがあります。1つ以上のTIMESTAMPパーティション列のあるPPI表に対して、選択パーティションのアーカイブまたは復元操作をユーザーが実行しようとした場合にも、このエラーが発生することがあります。
- 生成もと
- OPTモジュール
- 対象ユーザー
- エンド・ユーザー
- 注意
- なし
- 対処法
- ALL PARTITIONSを指定した場合は、PARTITIONS WHERE句に適切な条件を指定して再実行します。PARTITIONS WHERE句を指定した場合は、目的のパーティションだけを選択するように条件を書き換えて単純なものにする必要があるかもしれません。また、システム派生のPARTITION列を使用してPARTITIONS WHEREオプションを「ハードコード化」することもできます。Experiment with EXPLAINs of a simple SELECT query using various WHERE condition formulations and when you have something that will only scan a limited number of partitions, re-submit the job. また、PARTITIONS WHEREオプションを除去して完全表アーカイブまたは復元を実行するという手段もあります。復元を実行する場合は、ステージング表に復元し、ターゲット表から目的の行を削除してから、適切な行をターゲット表にINSERT-SELECTすることができます。