创建视图,主要是字段要和表的字段一一对应,可以为没有字段建立别名,这样就能保证一一对应了

CREATE OR REPLACE FORCE VIEW
CAMPAIGN_VIN_SERVICE_SUM(VIN_ID,HFC,VEH_MODEL_DESC,FIRST_CALL_TIME,BBWC_COMP_DATE,RED_BOTTON,AUTO_CRASH_RESP,AUTO_AIRBAG_DEPLOY_RESPONSE,
EMERGENCY_SERVICE,REMOTE_DOOR_UNLOCK,REMOTE_HORN_LIGHTS,ROAD_ASSISTANCE,STOLEN_VEH_LOC,ON_DEM_DIAG_STATUS,
T_B_T,ONS_DES_DOWNLOAD,P_O_I
)
as select * from
(select cs.VIN_ID VIN_ID,HFC,vm.VEH_MODEL_DESC VEH_MODEL_DESC,cs.FIRST_CALL_TIME FIRST_CALL_TIME,
cs.BBWC_COMP_DATE BBWC_COMP_DATE,cs.RED_BOTTON RED_BOTTON,cs.AUTO_CRASH_RESP AUTO_CRASH_RESP,
cs.AUTO_AIRBAG_DEPLOY_RESPONSE AUTO_AIRBAG_DEPLOY_RESPONSE,cs.EMERGENCY_SERVICE EMERGENCY_SERVICE,
cs.REMOTE_DOOR_UNLOCK REMOTE_DOOR_UNLOCK,cs.REMOTE_HORN_LIGHTS REMOTE_HORN_LIGHTS,cs.ROAD_ASSISTANCE ROAD_ASSISTANCE,
cs.STOLEN_VEH_LOC STOLEN_VEH_LOC,cs.ON_DEM_DIAG_STATUS ON_DEM_DIAG_STATUS,
cs.T_B_T T_B_T,cs.ONS_DES_DOWNLOAD ONS_DES_DOWNLOAD,cs.P_O_I P_O_I
from
SANDBOXUSER.CAMPAIGN_VIN_SERVICE cs,
vcs.VEHICLE vv,
VCS.VEH_MODEL vm
where cs.VIN_ID=vv.VIN_ID
and vv.VEH_MODEL= vm.VEH_MODEL
and cs.FIRST_CALL_TIME>=trunc(to_date('2011-08-01','YYYY-MM-DD'))
AND cs.FIRST_CALL_TIME<=trunc(to_date('2011-08-04','YYYY-MM-DD'))
union all
select '','',null,null,null,sum(cs.RED_BOTTON),sum(cs.AUTO_CRASH_RESP),
sum(cs.AUTO_AIRBAG_DEPLOY_RESPONSE),sum(cs.EMERGENCY_SERVICE),
sum(cs.REMOTE_DOOR_UNLOCK),sum(cs.REMOTE_HORN_LIGHTS),
sum(cs.ROAD_ASSISTANCE),
sum(cs.STOLEN_VEH_LOC),sum(cs.ON_DEM_DIAG_STATUS),
sum(cs.T_B_T),sum(cs.ONS_DES_DOWNLOAD),sum(cs.P_O_I)
from
SANDBOXUSER.CAMPAIGN_VIN_SERVICE cs,
vcs.VEHICLE vv,
VCS.VEH_MODEL vm
where cs.VIN_ID=vv.VIN_ID
and vv.VEH_MODEL= vm.VEH_MODEL
and cs.FIRST_CALL_TIME>=trunc(to_date('2011-08-01','YYYY-MM-DD'))
AND cs.FIRST_CALL_TIME<=trunc(to_date('2011-08-04','YYYY-MM-DD')))

原文地址:https://www.cnblogs.com/lmfeng/p/2131084.html