较为复杂的sql

最近工作中要给一个表增加指标字段。从NS0001到NS0100,手动添加太慢,一条条使用sql增加也麻烦,使用以下方法就好多了。

declare
  i number := 1;
begin
  loop
    if (i < 10) then
      execute immediate 'alter table wt_cell_l_3 add(NS00' || i ||
                        ' varchar(20))';
    else
      if (i >= 10 and i <= 99) then
        execute immediate 'alter table wt_cell_l_3 add(NS0' || i ||
                          ' varchar(20))';
      else
        execute immediate 'alter table wt_cell_l_3 add(NS' || i ||
                          ' varchar(20))';
      end if;
    end if;
    i := i + 1;
    exit when(i > 100);
  end loop;
end;

 

posted @ 2016-09-19 14:58  冲破天窗  阅读(199)  评论(0编辑  收藏  举报