Oracle 创建视图和增加额外列
1.创建oracle视图
- 创建视图
CREATE OR REPLACE VIEW VIEW_SEMI_FINISHED_PRODUCTS AS SELECT 0 pproductid, null pproductno, p.id cproductid, p.productno cproductno, null pproductdesc, null pproducttypedesc,TT.MEDIUM cproductdesc, TTT.medium cproducttypedesc, p.DEFAULTUOMCODE,p.facility, 1 quantity, p.active, null effectivedate, null discontinuedate FROM product pLEFT JOIN TEXT_TRANSLATION TT on TT.TEXTID = P.TEXTID and TT.LANGUAGEID=2052LEFT JOIN PRODUCT_INVENTORY_TYPE pit on pit.ProductInventoryType = p.productinventorytypeLEFT JOIN TEXT_TRANSLATION TTT on TTT.textid = pit.textidWHERE p.PRODUCTINVENTORYTYPE = 110 and p.ACTIVE=1- 0 pproductid: 添加不存在的列
- VIEW_SEMI_FINISHED_PRODUCTS:视图名
- 视图是一张临时表,它只存储表结构不存储数据l
- 使用视图
SELECT * FROM VIEW_SEMI_FINISHED_PRODUCTS -- 查询结果
2.添加视图列
- 创建视图过程中,当视图需要额外增加列,以便与后续视图使用。例如连表(UNION, UNION ALL)操纵等
create or replace view v_user asselect *, '1' type, 0 classid from user;
3.创建外部表
- 在使用oracle_fdw时,需要将创建的视图或者表通过外部表形式映射到Postgresql中。
- 注意:oracle_fdw只能映射视图和表,不能映射函数,存储过程,包等
create foreign table view_semi_finished_products (pproductid bigint,pproductno varchar(80),cproductid bigint,cproductno varchar(80),pproductdesc varchar(80),pproducttypedesc varchar(80),cproductdesc varchar(80),cproducttypedesc varchar(80),defaultuomcode varchar(50),facility varchar(80),quantity bigint,active smallint,effectivedate varchar(80),discontinuedate varchar(80) )server oracle options(schema 'FLX2',table 'VIEW_SEMI_FINISHED_PRODUCTS');- 视图(view_semi_finished_products)映射到pg外部表
- 注意:oracle_fdw只能映射视图和表,不能映射函数,存储过程,包等
参考文章:
Oracle创建视图(View)
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
