大佬们,急急急! 用UNION ALL 创建视图时,怎么处理字段类型不一样的字段呢。

求真挚意 2018-03-28 04:33:06
问题如下: 我用union all 创建视图时, weigh 和 netweight是同一个处理同一个数据的字段,但是出于两个表下,我需要将这两个表关联在一起。 weigh是varchar2 类型, netweight是float类型。 我怎么在创建视图时将netweight转换为varchar2类型呢。
...全文
1365 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
卖水果的net 2018-03-28
  • 打赏
  • 举报
回复

-- 建议检查一下其他的列。 


SQL> 
SQL> create table t1(id int, name varchar(10));
Table created
SQL> create table t2(id int, name float);
Table created
SQL> begin
  2    insert into t1 values(11, 'xxx');
  3    insert into t1 values(12, 'yyy');
  4    insert into t2 values(21, 9.9);
  5    insert into t2 values(22, 11.0);
  6  end;
  7  /
PL/SQL procedure successfully completed
SQL> create view v1
  2  as
  3  select id, name from t1
  4  union all
  5  select id, name from t2
  6  ;
create view v1
as
select id, name from t1
union all
select id, name from t2
ORA-01790: 表达式必须具有与对应表达式相同的数据类型
SQL> create view v2
  2  as
  3  select id, name from t1
  4  union all
  5  select id, to_char(name) from t2
  6  ;
View created
SQL> select * from v1;
select * from v1
ORA-00942: 表或视图不存在
SQL> select * from v2;
        ID NAME
---------- ----------------------------------------
        11 xxx
        12 yyy
        21 9.9
        22 11
SQL> drop table t1 purge;
Table dropped
SQL> drop table t2 purge;
Table dropped
SQL> drop view v1;
drop view v1
ORA-00942: 表或视图不存在
SQL> drop view v2;
View dropped

SQL> 
求真挚意 2018-03-28
  • 打赏
  • 举报
回复
引用 1 楼 wmxcn2000 的回复:
-- 试试 to_char
to_char(netweight)
不好使 最初我用的to_char方法,还是提示类型不同错误
卖水果的net 2018-03-28
  • 打赏
  • 举报
回复
-- 试试 to_char to_char(netweight)

17,089

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧