Está en la página 1de 2

1.

a)
select c.nombre
from cliente c inner join empr_cliente ec on c.cedula=ec.ced_cliente
inner join empresa e on ec.nit_empresa=e.nit
inner join barrio b on e.cod_barrio=b.codigo
inner join ciudad ci on b.cod_ciudad=ci.codigo
where upper (ci.nombre) like 'MEDELLIN'
intersect
select c.nombre
from cliente c inner join empr_cliente ec on c.cedula=ec.ced_cliente
inner join empresa e on ec.nit_empresa=e.nit
inner join barrio b on e.cod_barrio=b.codigo
inner join ciudad ci on b.cod_ciudad=ci.codigo
where upper (ci.nombre) like 'CALI';

B)
select e.*
from empresa e inner join empr_cliente ec
on e.nit=ec.nit_empresa
group by e.nit,e.nombre,e.direccion,e.fecha_creacion,e.cod_barrio
having count(*)=(select max (count(*))
from empr_cliente
group by nit_empresa
)
/

ejercicio minus:
create table cliente
(id varchar (5) constraint cl_id_pk primary key,
nombre varchar (50) constraint cl_nombre_nn not null);

create table cli_inst


(idinst varchar (10) constraint cliinst_idinst_nn not null
constraint cliinst_idinst_fk references institucion (id),
idcli varchar (5) constraint cliinst_idcli_nn not null
constraint cliinst_idcli_fk references cliente(id));

insert into cliente


values ('&id','&nombre');

insert into cli_inst


values ('&idinst','&idcli');

select i.* from institucion i inner join cli_inst ci on i.id=ci.idinst inner join
cliente c on ci.idcli=c.id
WHERE i.id= (select distinct id from cliente
where upper (nombre) like 'RESTAURANTES'
)
minus
select i.* from institucion i inner join cli_inst ci on i.id=ci.idinst inner join
cliente c on ci.idcli=c.id
WHERE i.id= (select distinct id from cliente
where upper (nombre) not like 'RESTAURANTES');
declare
v_id varchar(45);
v_nombre varchar (50);
begin
insert into cliente
values ('&v_id','&v_nombre');
commit;
end;
/

También podría gustarte