1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
| DECLARE
-- déclaration du curseur
CURSOR my_cursor IS
SELECT distinct COUNTRY
from WW_SITES_JAN;
-- variables d'accueil
COUNTRY VARCHAR2(180);
V_GEO VARCHAR2(50);
V_REGION VARCHAR2(180);
V_COUNTRY VARCHAR2(180);
V_INDUSTRY VARCHAR2(150);
NBR_SOD NUMBER;
NBR_DUNS NUMBER;
BEGIN
OPEN my_cursor; -- ouverture du curseur
For curs IN my_cursor
LOOP -- boucle sur les lignes
-- Problème de fetch à résoudre: "ORA-01422: exact fetch returns more than requested number of rows"
FETCH my_cursor
INTO COUNTRY;
select distinct geo, region, country, null, count(*)
into V_GEO, V_REGION, V_COUNTRY, V_INDUSTRY, NBR_SOD
from WW_SITES_JAN
where curs.country = country
group by geo, region, country;
insert into toto2 (geo, region, country, site_industry, nbr_sod)
values (v_geo, v_region, v_country, v_industry, nbr_sod);
-- EXIT WHEN my_cursor%NOTFOUND;
END LOOP;
CLOSE my_cursor; -- fermeture du curseur
END; |
Partager