日期:2014-05-17  浏览次数:20896 次

关于创建视图中,我想修改视图中其中一个字段的类型,如何做?
创建视图中,我想修改视图中其中一个字段的类型,如何做?

一个表table1,其中有个字段person_no,字段是Varchar的。
我想创建一个视图,更换视图里面这个字段为整型。如何做?

在线等。谢谢大家了!

------解决方案--------------------
to_number(person_no) person_no
------解决方案--------------------
探讨
创建视图中,我想修改视图中其中一个字段的类型,如何做?

一个表table1,其中有个字段person_no,字段是Varchar的。
我想创建一个视图,更换视图里面这个字段为整型。如何做?

在线等。谢谢大家了!

------解决方案--------------------
to_number的时候最好加个nvl(varchar2,'0')
------解决方案--------------------
SQL code
create view as
select to_number(nvl(person_no,0)) from tb

------解决方案--------------------
SQL code

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