创建视图中,我想修改视图中其中一个字段的类型,如何做?一个表table1,其中有个字段person_no,字段是Varchar的。
我想创建一个视图,更换视图里面这个字段为整型。如何做?在线等。谢谢大家了!

解决方案 »

  1.   

    to_number的时候最好加个nvl(varchar2,'0')
      

  2.   

    create view as
    select to_number(person_no) from tb
      

  3.   

    create view as
    select to_number(nvl(person_no,0)) from tb
      

  4.   

    可以转了。但是我那个字段的号码太长,to_number后有问题了。
      

  5.   


    create table person(
           p_no varchar2(5),
           pname varchar2(20),
           sex char(1),
           age number(3),
           address varchar2(50));
    SQL> select * from person ;P_NO  PNAME                SEX  AGE ADDRESS
    ----- -------------------- --- ---- --------------------------------------------------
    1001  James                M     56 Mexco--P_NO左对齐,说明是字符类型
    1002  Scott                F     22 Tokyo
    1003  Smith                M     18 Beijing
    1004  yeeXun               M     22 China
    1005  Lili 
    --
    create view view_person
    as
    select to_number(nvl(p_no,0)) p_no,pname,age from person;
    SQL> select * from view_person;      P_NO PNAME                 AGE
    ---------- -------------------- ----
          1001 James                  56--P_NO右对齐,说明是number类型
          1002 Scott                  22
          1003 Smith                  18
          1004 yeeXun                 22
          1005 Lili