Teradata丢弃统计信息(如果存在统计信息)

时间:2020-04-05 00:36:37

标签: teradata

DDL / DML脚本正在修改表结构,并且列上的统计信息阻止其继续进行。 找到的解决方案是-先删除正在修改/删除的列的统计信息。

但是,如果统计信息不存在,则在尝试删除这些统计信息时,脚本会被中止。

实现“如果存在统计信息,丢弃统计信息”逻辑的便宜方法是什么?

1 个答案:

答案 0 :(得分:0)

根据Dieter的反馈,该代码似乎在SQL * Assistant中正常工作:

select * from dbc.StatsV
where tablename='${table_name}'
  and columnName='${column_name}'
;

.IF ACTIVITYCOUNT>0 THEN .GOTO lbl_drop;

select 'Stats not found for column ${column_name}';
.EXIT; 

.LABEL lbl_drop;
select 'Dropping stats for column ${column_name}';
DROP STATISTICS ON ${table_name} COLUMN ${column_name};