Exercício A
- 01. Abra seu SGBD
- MySQL, PostgreSQL, Oracle, ...
- 02. Crie a tabela Climas
- Create table Climas (
- cidade varchar(50),
- temp_min float,
- temp_max float,
- prcp float,
- data date);
- 03. Insira dados coletados na Web sobre as seguintes cidades
- Belo Horizonte
- insert into climas (cidade, temp_min, temp_max, prcp, data)
- values ('Belo Horizonte', 22.0, 14.0, 24.0, '2015-06-21');
- Cuiabá
- insert into climas (cidade, temp_min, temp_max, prcp, data)
- values ('Cuiabá', 31.0, 18.0, 1.0, '2015-06-21');
- Curitiba
- insert into climas (cidade, temp_min, temp_max, prcp, data)
- values ('Curitiba', 20.0, 12.0, 3.0, '2015-06-21');
- Fortaleza
- insert into climas (cidade, temp_min, temp_max, prcp, data)
- values ('Fortaleza', 26.0, 23.0, 11.0, '2015-06-21');
- Uberlândia
- insert into climas (cidade, temp_min, temp_max, prcp, data)
- values ('Uberlândia', 22.0, 4.0, 4.0, '2015-06-21');
- Belo Horizonte
- 04. Crie a tabela Cidades com os seguintes campos:
- Nome(Str) , Habitantes (Int) , NomeEstado (Str), Aniversário (Date) , Area (Km2) (Float)
- Create table Cidades (
- Nome varchar(50),
- Habitantes Integer,
- NomeEstado varchar(30),
- Aniversário Date,
- Area Float);
- 05. Insira dados na tabela acima
- insert into cidades (Nome, Habitantes, NomeEstado, Aniversário, Area)
- values ('Belo Horizonte', 2479175, 'MG', '1897-12-12', 330.95) ;
- insert into cidades (Nome, Habitantes, NomeEstado, Aniversário, Area)
- values ('Cuiabá', 575480 , 'MT', '1719-04-08', 3538.167) ;
- insert into cidades (Nome, Habitantes, NomeEstado, Aniversário, Area)
- values ('Fortaleza', 8166.56 , 'CE', '1726-04-13', 314.930) ;
- insert into cidades (Nome, Habitantes, NomeEstado, Aniversário, Area)
- values ('Uberlândia', 15712 , 'MG', '1888-08-31', 4115822.0) ;
- insert into cidades (Nome, Habitantes, NomeEstado, Aniversário, Area)
- values ('Curitiba', 1864416 , 'PR', '1693-03-29', 435036) ;
- 06. Crie os índices nome e Aniversário
- CREATE INDEX IndNome
- ON Cidades (Nome);
- CREATE INDEX IndAniversario
- ON Cidades (Aniversário);
- 07. Altere o nome do Campo Habitantes para NroHabitantes
- ALTER TABLE cidades CHANGE Habitantes NroHabitantes varchar(50);
- 08. Crie a tabela Eventos com os seguintes campos:
- NomeEvento (Str) , Data (Date) , Horário (Int), Local (Str), Preço (Float)
- Create table Eventos (
- NomeEvento varchar(50),
- Data Date,
- Horário Integer,
- Local varchar(50),
- Preço Float );
- 09. Insira dados de eventos quaisquer para as cidades
- Insert into table EVentos (NomeEvento, Data, Horário, Local, Preço)
- values ('Lo Borges', '2015-12-22', 21, 'Belo Horizonte', 30.0);
- Insert into EVentos (NomeEvento, Data, Horário, Local, Preço)
- values ('Sá e Guarabira', '2015-11-12', 22, 'Belo Horizonte', 25.0);
- Insert into EVentos (NomeEvento, Data, Horário, Local, Preço)
- values ('Jota Quest', '2015-09-12', 21, 'Belo Horizonte', 35.0);
- Insert into EVentos (NomeEvento, Data, Horário, Local, Preço)
- values ('Alexandre Pires', '2015-08-14', 21, 'Uberlândia', 30.0);
- Insert into EVentos (NomeEvento, Data, Horário, Local, Preço)
- values ('Só pra contrariar', '2015-10-21', 22, 'Uberlândia', 25.0);
- Insert into EVentos (NomeEvento, Data, Horário, Local, Preço)
- values ('Lucas Lucco', '2015-07-13', 21, 'Uberlândia', 25.0);
- Insert into EVentos (NomeEvento, Data, Horário, Local, Preço)
- values ('Lenine', '2015-06-23', 22, 'Curitiba', 35.0);
- Insert into EVentos (NomeEvento, Data, Horário, Local, Preço)
- values ('Luan Santana', '2015-08-25', 21, 'Curitiba', 35.0);
- Insert into EVentos (NomeEvento, Data, Horário, Local, Preço)
- values ('Elba Ramalho', '2015-07-22', 21, 'Cuiabá', 25.0);
- Insert into EVentos (NomeEvento, Data, Horário, Local, Preço)
- values ('Banda Malta', '2015-09-02', 22, 'Cuiabá', 20.0);
- Insert into EVentos (NomeEvento, Data, Horário, Local, Preço)
- values ('Seu Jorge', '2015-11-11', 22, 'Fortaleza', 30.0);
- Insert into EVentos (NomeEvento, Data, Horário, Local, Preço)
- values ('Sorriso Maroto', '2015-12-22', 21, 'Fortaleza', 25.0);
- 10. Gere um relatório mostrando os dados da Cidade
- Select * from cidades;
- 11. Gere um relatório mostrando apenas Nome, Estado e Area das Cidades
- Select Nome, Area, NomeEstado from cidades;
- 12. Gere um relatório mostrando Nome, NomeEstado e Area das Cidades em ordem alfabética de Nome
- Select Nome, Area, NomeEstado from cidades
- order by Nome;
- 13. Gere um relatório mostrando Nome, NomeEstado e Area das Cidades em ordem descendente de Nome
- Select Nome, Area, NomeEstado from cidades
- order by Nome desc;
- 14. Gere um relatório com as cidades que possuem eventos (Sem duplicidade)
- Select distinct local from eventos
- 15. Gere uma view com as cidades de Minas Gerais
- create view ViewCidade AS
- select nome
- from cidades
- where NomeEstado = 'MG'
- select * from viewcidades
- 16. Gere uma view com todos os dados de Cidades (Nome e Data Fundação) com seus eventos
- create view ViewEventos AS
- select cidades.Nome, cidades.Aniversário, EVentos.NomeEvento, EVentos.Data, EVentos.Horário, EVentos.Local, EVentos.Preço
- from Cidades, Eventos
- where EVentos.Local = cidades.Nome
- select * from viewEventos
- 17. Exclua a cidade de Curitiba
- delete from Cidades where Nome = 'Curitiba'
- 18. Recupere a tabela com a cidade de Curitiba
- Recovery Model Full (ou no mínimo Bulk Logged) = Yes => Possible
- SIMPLE = :((
- 19. Inclua a tabela Estados com os seguintes campos:
- UF (Str), NomeEstado (Str), Regiao (Str)
- create table Estados (
- UF Integer,
- NomeEstado varchar(50),
- Regiao varchar(50) )
- 20. Insira 2 estados da região sudeste na tabela Estados
- insert into Estados (UF, NomeEstado, Regiao)
- values (13, 'Minas Gerais', 'Sudeste')
- insert into Estados (UF, NomeEstado, Regiao)
- values (25, 'São Paulo', 'Sudeste')
- 21. Gere uma view que mostre os novos dados apenas da Região Sudeste
- create view ViewEstados AS
- select * from Estados
- where regiao = 'Sudeste'
- select * from ViewEstados
- 22. Inclua os demais estados do Brasil
- insert into Estados (UF, NomeEstado, Regiao) values (1, 'Acre', 'Norte')
- insert into Estados (UF, NomeEstado, Regiao) values (2, 'Alagoas', 'Nordeste')
- insert into Estados (UF, NomeEstado, Regiao) values (3, 'Amapá', 'Norte')
- insert into Estados (UF, NomeEstado, Regiao) values (4, 'Amazonas', 'Norte')
- insert into Estados (UF, NomeEstado, Regiao) values (5, 'Bahia', 'Nordeste')
- insert into Estados (UF, NomeEstado, Regiao) values (6, 'Ceará', 'Nordeste')
- insert into Estados (UF, NomeEstado, Regiao) values (7, 'Distrito Federal', 'Centro-Oeste')
- insert into Estados (UF, NomeEstado, Regiao) values (8, 'Espírito Santo', 'Sudeste')
- insert into Estados (UF, NomeEstado, Regiao) values (9, 'Goiás', 'Centro-Oeste')
- insert into Estados (UF, NomeEstado, Regiao) values (10, 'Maranhão', 'Nordeste')
- insert into Estados (UF, NomeEstado, Regiao) values (11, 'Mato Grosso', 'Centro-Oeste')
- insert into Estados (UF, NomeEstado, Regiao) values (12, 'Mato Grosso do Sul', 'Centro-Oeste')
- insert into Estados (UF, NomeEstado, Regiao) values (14, 'Pará', 'Norte')
- insert into Estados (UF, NomeEstado, Regiao) values (15, 'Paraíba', 'Nordeste')
- insert into Estados (UF, NomeEstado, Regiao) values (16, 'Paraná', 'Sul')
- insert into Estados (UF, NomeEstado, Regiao) values (17, 'Pernambuco', 'Nordeste')
- insert into Estados (UF, NomeEstado, Regiao) values (18, 'Piauí', 'Nordeste')
- insert into Estados (UF, NomeEstado, Regiao) values (19, 'Rio de Janeiro', 'Sudeste')
- insert into Estados (UF, NomeEstado, Regiao) values (20, 'Rio Grande do Norte', 'Nordeste')
- insert into Estados (UF, NomeEstado, Regiao) values (21, 'Rio Grande do Sul', 'Sul')
- insert into Estados (UF, NomeEstado, Regiao) values (22, 'Rondônia', 'Norte')
- insert into Estados (UF, NomeEstado, Regiao) values (23, 'Roraima', 'Norte')
- insert into Estados (UF, NomeEstado, Regiao) values (24, 'Santa Catarina, 'Sul')
- insert into Estados (UF, NomeEstado, Regiao) values (26, 'Sergipe', 'Nordeste')
- insert into Estados (UF, NomeEstado, Regiao) values (27, 'Tocantins', 'Norte')
- 23. Mostre novamente os dados da view Estados
- Select * from viewEstados