create table pessoas( codigo integer not null, nome varchar(50) not null, tipo char(1) not null, cpf char(11), rg char(10), cnpj char(14), ie char(20) ); insert into pessoas values (1,'Paulo','F','123', '456'), (2, 'Bourbon','J',null,null,'000000','11111'), (3,'Maria','F','321', '654'); select * from pessoas; --b. visões pessoas físicas e as pessoas juridicas create view fisicas (codigo, nome,cpf, rg) as select codigo, nome,cpf, rg from pessoas where tipo='F'; create view juridicas (codigo, nome,cnpj, ie) as select codigo, nome,cnpj, ie from pessoas where tipo='J'; select nome, cpf from fisicas select nome, cnpj from juridicas -- visao atualizavel create view fisicas_atualiza (codigo, nome,tipo, cpf, rg) as select codigo, nome,tipo, cpf, rg from pessoas where tipo='F'; insert into fisicas_atualiza values (10, 'teste de visao', 'F','898989','09888') select * from fisicas_atualiza select * from pessoas - consulta select tipo, count(*) from pessoas group by tipo