Você está na página 1de 2

/*DROP TABLE climaexistente;

CREATE TABLE climaexistente(


pais VARCHAR2(15),
dpto VARCHAR2(15),
clima VARCHAR2(15),
PRIMARY KEY(pais,dpto,clima)
);

INSERT INTO climaexistente VALUES('Colombia','Antioquia','Templado');


INSERT INTO climaexistente VALUES('Colombia','Antioquia','C�lido');
INSERT INTO climaexistente VALUES('Colombia','Bol�var','C�lido');
INSERT INTO climaexistente VALUES('Colombia','Bol�var','Horneante');
INSERT INTO climaexistente VALUES('Colombia','Nari�o','Templado');
INSERT INTO climaexistente VALUES('Colombia','Nari�o','Glacial');
INSERT INTO climaexistente VALUES('America','Nari�o','Glacial');
*/
DROP TABLE climaexistente;
CREATE TABLE climaexistente(
pais VARCHAR2(15),
dpto VARCHAR2(15),
clima VARCHAR2(15),
PRIMARY KEY(pais,dpto,clima)
);

INSERT INTO climaexistente VALUES('Colombia','Antioquia','Templado');


INSERT INTO climaexistente VALUES('Colombia','Antioquia','C�lido');
INSERT INTO climaexistente VALUES('Colombia','Bol�var','C�lido');
INSERT INTO climaexistente VALUES('Colombia','Bol�var','Horneante');
INSERT INTO climaexistente VALUES('Colombia','Nari�o','Templado');
INSERT INTO climaexistente VALUES('Colombia','Nari�o','Glacial');
INSERT INTO climaexistente VALUES('America','Nari�o','Glacial');
INSERT INTO climaexistente VALUES('America','Nari�o','Templado');

DECLARE
CURSOR ordenaClima IS
SELECT c1.pais, c1.dpto, c2.clima
FROM climaexistente c1, climaexistente c2
MINUS
SELECT *
FROM climaexistente
ORDER BY 1,2,3;
clim climaexistente%ROWTYPE;
BEGIN
OPEN ordenaClima;
LOOP
FETCH ordenaClima INTO clim;
EXIT WHEN ordenaClima%NOTFOUND;
DBMS_OUTPUT.PUT_LINE(clim.pais|| ' ' || clim.dpto|| ' ' || clim.clima);
END LOOP;
CLOSE ordenaClima;
END;
/

SELECT distinct c1.pais, c1.dpto, c2.clima


FROM climaexistente c1, climaexistente c2
WHERE NOT EXISTS (SELECT 1
FROM climaexistente c3
WHERE c3.pais = c1.pais
AND c3.dpto = c1.dpto
AND c3.clima = c2.clima)
ORDER BY 2,3;

Você também pode gostar