现在的位置: 首页 > 综合 > 正文

自动生成创建索引脚本

2013年10月06日 ⁄ 综合 ⁄ 共 577字 ⁄ 字号 评论关闭

select table_name,INDEX_NAME,
       'create index ' ||INDEX_NAME|| ' on '|| table_name||' ('||ltrim(max(SYS_CONNECT_BY_PATH(DIC.COLUMN_NAME, ',')), ',')||');'
  from (select 
               di.table_name,
               di.INDEX_NAME,               
               dic.column_name,
               dic.column_position child,
               dic.column_position - 1 father
          from DBA_IND_COLUMNS dic, dba_indexes di
         where DIC.INDEX_OWNER = 'NETSPLATDATA'
           and dic.INDEX_NAME = di.index_name
           and di.owner = 'NETSPLATDATA'
           and di.table_name='APP_PREM_DUE') dic
 START WITH DIC.father = 0
CONNECT BY PRIOR DIC.child = DIC.father
 group by table_name,INDEX_NAME

抱歉!评论已关闭.