在进行SQL优化的过程中,会遇到谓词越界导致执行计划错误的情况,就需要确定其指定列上统计信息中的最大值和最小值是否为最新的,以下是查询转换的SQL
点击(此处)折叠或打开
- set serveroutput on
- declare
- a_low dba_tab_columns.low_value%type;
- a_high dba_tab_columns.high_value%type;
- aa NMOSDB.TFA_ALARM_CLR.EVENT_TIME%type;
- begin
- SELECT LOW_VALUE, HIGH_VALUE
- into a_low, a_high
- FROM dba_tab_columns
- WHERE owner = 'NMOSDB' ----用户名
- AND table_name in ('TFA_ALARM_CLR') ---表名
- and COLUMN_NAME in (upper('EVENT_TIME'));
- dbms_stats.convert_raw_value(a_low, aa);
- dbms_output.put_line(''||aa);
- dbms_stats.convert_raw_value(a_high, aa);
- dbms_output.put_line(aa);
- end;
- /
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28551528/viewspace-2125943/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/28551528/viewspace-2125943/