[20221216]建立修改表统计信息minmaxtab.sql脚本.txt --//修改表字段的最大最小为NULL. $ cat minmaxtab.sql set verify off set termout off column v_owner new_value v_owner column v_table new_value v_table select upper(CASE WHEN INSTR('&1','.') > 0 THEN SUBSTR('&1',INSTR('&1','.')+1) ELSE '&1' END ) v_table, nvl(upper(CASE WHEN INSTR('&1','.') > 0 THEN UPPER(SUBSTR('&1',1,INSTR('&1','.')-1)) ELSE user END),user) v_owner from dual; set termout on prompt prompt modify table:&1 column=&2 stats min and max = NULL prompt input argument list : owner.table_name column_name prompt DECLARE CURSOR c1 IS SELECT * FROM all_tab_col_statistics WHERE owner = upper('&&v_owner') AND table_name = upper('&&v_table') AND column_name = upper('&&2') AND histogram = 'NONE' AND last_analyzed IS NOT NULL; v_num_distinct all_tab_col_statistics.num_distinct%TYPE; z_distcnt NUMBER; z_density NUMBER; z_nullcnt NUMBER; z_srec DBMS_STATS.statrec; z_avgclen NUMBER; BEGIN FOR r IN c1 LOOP DBMS_STATS.get_column_stats ( ownname => r.owner ,tabname => r.table_name ,colname => r.column_name ,distcnt => z_distcnt ,density => z_density ,nullcnt => z_nullcnt ,srec => z_srec ,avgclen => z_avgclen ); DBMS_STATS.delete_column_stats ( ownname => r.owner ,tabname => r.table_name ,colname => r.column_name ,cascade_parts => TRUE ,no_invalidate => TRUE ,force => TRUE ); z_srec.minval := NULL; z_srec.maxval := NULL; IF r.num_distinct = 1 THEN v_num_distinct := 1 + 1e-14; ELSE v_num_distinct := r.num_distinct; END IF; IF r.num_distinct <> 0 THEN DBMS_STATS.set_column_stats ( ownname => r.owner ,tabname => r.table_name ,colname => r.column_name ,distcnt => v_num_distinct ,density => 1 / v_num_distinct ,nullcnt => r.num_nulls ,srec => z_srec -- No HIGH_VALUE/LOW_VALUE ,avgclen => r.avg_col_len ,no_invalidate => FALSE ,force => TRUE ); END IF; END LOOP; END; / 1.环境: SCOTT@test01p> @ ver1 PORT_STRING VERSION BANNER CON_ID ------------------------------ -------------- -------------------------------------------------------------------------------- ---------- IBMPC/WIN_NT64-9.1.0 12.2.0.1.0 Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production 0 2.测试: SCOTT@test01p> @ descz scott.empx HIREDATE eXtended describe of scott.empx DISPLAY TABLE_NAME OF COLUMN_NAME INFORMATION. INPUT OWNER.TABLE_NAME <filters> SAMPLE : @ desczz TABLE_NAME column_name1,column_name2 IF NOT INPUT <filters> ,USE "" or 1=1 or 1. Sample Distinct Number Number Owner Table_Name Size LAST_ANALYZED Col# Column Name Null? Type Values Density Nulls HISTOGRAM Buckets Low_value High_value ---------- -------------------- -------------- ------------------- ---- -------------------- ---------- -------------------- ------------ -------------- ---------- --------------- ------- ---------------------------------------- ---------------------------------------- SCOTT EMPX 14 2022-10-10 20:40:34 5 HIREDATE TIMESTAMP(6)(11) 13 .07692307692 0 1 1972-10-22 20:39:27. 2022-10-10 20:35:42.536000000 SCOTT@test01p> @ minmaxtab scott.empx hiredate modify table:scott.empx column=hiredate stats min and max = NULL input argument list : owner.table_name column_name SCOTT@test01p> @ descz scott.empx HIREDATE eXtended describe of scott.empx DISPLAY TABLE_NAME OF COLUMN_NAME INFORMATION. INPUT OWNER.TABLE_NAME <filters> SAMPLE : @ desczz TABLE_NAME column_name1,column_name2 IF NOT INPUT <filters> ,USE "" or 1=1 or 1. Sample Distinct Number Number Owner Table_Name Size LAST_ANALYZED Col# Column Name Null? Type Values Density Nulls HISTOGRAM Buckets Low_value High_value ---------- -------------------- -------------- ------------------- ---- -------------------- ---------- -------------------- ------------ -------------- ---------- --------------- ------- ---------------------------------------- ---------------------------------------- SCOTT EMPX 2023-01-17 22:08:06 5 HIREDATE TIMESTAMP(6)(11) 13 .07692307692 0 1 -- ::. -- ::. --//已经清空了最大最小值.
[20221216]建立修改表统计信息minmaxtab.sql脚本.txt
来源:这里教程网
时间:2026-03-03 18:20:06
作者:
编辑推荐:
- [20221216]建立修改表统计信息minmaxtab.sql脚本.txt03-03
- [20221216]建立修改表统计信息modtab.sql脚本.txt03-03
- [20221227]19c LISTAGG Enhancements.txt03-03
- [20221222]How to Enable and Disable Database Options in oracle 11g.txt03-03
- [20221227]Adaptive Cursor Sharing & 直方图.txt03-03
- ORACLE数据库降低高水位线方法03-03
- [20221227]a mutating table error without a trigger!.txt03-03
- LINUX 环境 mysql to oracle OGG安装配置03-03
下一篇:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- LINUX 环境 mysql to oracle OGG安装配置
LINUX 环境 mysql to oracle OGG安装配置
26-03-03 - OGG11G升级至12C文档
OGG11G升级至12C文档
26-03-03 - cursor:pin S wait on X故障诊分析
cursor:pin S wait on X故障诊分析
26-03-03 - OGG12c卸载步骤说明
OGG12c卸载步骤说明
26-03-03 - oracle安装包遇到Error: Package: gcc-4.8.5-11.el7.x86_64 (base)问题
- 收购淘米后,MMV加速走向迪士尼式IP开发之旅
收购淘米后,MMV加速走向迪士尼式IP开发之旅
26-03-03 - 百万国产豪车占坑,比亚迪终于还是忍不住了
百万国产豪车占坑,比亚迪终于还是忍不住了
26-03-03 - 盘点办公中所需的5款电脑软件
盘点办公中所需的5款电脑软件
26-03-03 - oracle 21c创建非OMF文件命名格式的PDB
oracle 21c创建非OMF文件命名格式的PDB
26-03-03 - 【ASK_ORACLE】因process用尽导致的rac重启的解决方法
【ASK_ORACLE】因process用尽导致的rac重启的解决方法
26-03-03
