下面是我的case语句 , 错误信息说, 要给case 的字段列起一个名字 不过我不知道怎样搞 create or replace view vwBasic_Region as
SELECT LBasic_Region3.RegionID3, LBasic_Region2.RegionID2, LBasic_Region1.RegionID1, ( CASE WHEN LBasic_Region3.Region='f' THEN '' ELSE LBasic_Region3.Region END)
FROM LBasic_Region3 FULL OUTER JOIN LBasic_Region2 ON LBasic_Region3.RegionID3 = LBasic_Region2.RegionID3 FULL OUTER JOIN LBasic_Region1 ON LBasic_Region2.RegionID2 = LBasic_Region1.RegionID2
( CASE WHEN LBasic_Region3.Region='f' THEN '' ELSE LBasic_Region3.Region END) as region
CREATE OR REPLACE PROCEDURE count_proc AS BEGIN insert into table3 select name,sum( case when flag2=1 then num else 0 end) as count1,sum(case when flag2=2 then num else 0 end) as count2 from table2 group by name; commit; END;select 'a' as name from table3 where rownum=1;
不过我不知道怎样搞
create or replace view vwBasic_Region as
SELECT LBasic_Region3.RegionID3, LBasic_Region2.RegionID2,
LBasic_Region1.RegionID1,
(
CASE
WHEN LBasic_Region3.Region='f'
THEN ''
ELSE LBasic_Region3.Region
END)
FROM LBasic_Region3 FULL OUTER JOIN
LBasic_Region2 ON
LBasic_Region3.RegionID3 = LBasic_Region2.RegionID3 FULL OUTER JOIN
LBasic_Region1 ON
LBasic_Region2.RegionID2 = LBasic_Region1.RegionID2
CASE
WHEN LBasic_Region3.Region='f'
THEN ''
ELSE LBasic_Region3.Region
END) as region
BEGIN
insert into table3 select name,sum( case when flag2=1 then num else 0 end) as count1,sum(case
when flag2=2 then num else 0 end) as count2 from table2 group by name;
commit;
END;select 'a' as name from table3 where rownum=1;