4
Instruções: Equipe de ate 5 integrantes Data da entrega: 02/04/2013 Forma de entrega: Email ( [email protected]) Obs: Utilize os slides sql enviados como apoio , os manuais de sql em português e inglês também são uma boa fonte de apoio. Pratica 1 paises (id_pais , nome_pais, id_regiao); departamentos (id_dept , nome_dept, id_gerente,id_local); empregados(id_empregado , nome_empregado, email, telefone ,data_inicial, id_cargo, salário, id_gerente, id_departamento); cargos(id_cargo ,nome_cargo,salario_minimo,salario_maximo); historico_cargos(id_empregado, data_inicial,data_final ,id_cargo,id_departamento); locais(id_local , rua,cep,cidade,estado,id_pais); regioes(id_regiao , nome_regiao); Legenda: Atributos sublinhados em negrito são chave primaria. Atributos em cor vermelha são chave estrangeira. 1- Dado o esquema de tabelas acima: 1.1- Construa o modelo ER 1.2- Implemente as tabelas em sql 1.3- Alimente as tabelas 1.4- Responda as questões abaixo com comandos sql ( Select, where, funções de única linha, funções de grupo, joins, subconsultas): 1.4-1. Respostas genéricas. 1. Faca uma consulta para exibir todos os dados da tabela departamentos. 2. Crie uma consulta para exibir os códigos de cargos exclusivos na tabela de empregados 3. De um aumento de 50%(salario) a todos os empregados, exiba um relatório com o nome do empregado, salário antigo e o salário novo. Renomeie as colunas para salario_antigo e salario_novo.

Pratica1

Embed Size (px)

Citation preview

Page 1: Pratica1

Instruções: Equipe de ate 5 integrantes Data da entrega: 02/04/2013 Forma de entrega: Email ( [email protected]) Obs: Utilize os slides sql enviados como apoio , os manuais de sql em português e inglês também são uma boa fonte de apoio. Pratica 1 paises (id_pais, nome_pais, id_regiao); departamentos (id_dept, nome_dept, id_gerente,id_local); empregados(id_empregado, nome_empregado, email, telefone ,data_inicial, id_cargo, salário, id_gerente, id_departamento); cargos(id_cargo,nome_cargo,salario_minimo,salario_maximo); historico_cargos(id_empregado, data_inicial,data_final,id_cargo,id_departamento); locais(id_local, rua,cep,cidade,estado,id_pais); regioes(id_regiao, nome_regiao); Legenda: Atributos sublinhados em negrito são chave primaria. Atributos em cor vermelha são chave estrangeira.

1- Dado o esquema de tabelas acima: 1.1- Construa o modelo ER 1.2- Implemente as tabelas em sql 1.3- Alimente as tabelas 1.4- Responda as questões abaixo com comandos sql ( Select, where, funções de

única linha, funções de grupo, joins, subconsultas): 1.4-1. Respostas genéricas.

1. Faca uma consulta para exibir todos os dados da tabela departamentos. 2. Crie uma consulta para exibir os códigos de cargos exclusivos na tabela de

empregados

3. De um aumento de 50%(salario) a todos os empregados, exiba um relatório

com o nome do empregado, salário antigo e o salário novo. Renomeie as colunas para salario_antigo e salario_novo.

Page 2: Pratica1

4. Crie uma consulta para exibir o nome e o salário dos funcionários que recebam mais de 12000

5. Crie uma consulta para exibir o nome do funcionário e o número do

departamento, sendo que número do funcionário é 176. 6. Exiba o nome e o número do departamento de todos os funcionários nos

departamentos 20 e 50 em ordem alfabética de nome.

7. Mostre o nome e o salário de todos os funcionários cujo salário não esteja

na faixa de 5000 a 12000. 8. Exiba o nome do funcionário, o id do cargo e a data inicial dos funcionários

admitidos entre 20/02/1998 e 01/05/1998. Ordene a consulta em ordem crescente pela data inicial.

9. Exiba o nome e o numero do departamento de todos os funcionários nos

departamentos 90 e 50 10. Faça uma consulta para listar o nome e o salário dos funcionários que

ganhem entre 5000 e 12000 e estejam no departamento 20 ou 50.

11. Exiba o sobrenome e a data de admissão de cada funcionário admitido em 1994

12. Exiba o nome e o cargo dos funcionários que não tenham um gerente

13. Exiba o nome e o salário de todos os funcionários que recebem comissão.

Classifique os dados em ordem decrescente de salário e comissões

14. Para cada funcionário exiba seu numero, nome, salário e aumento salarial de 15% expresso como um número inteiro.

15. Exiba o nome e o salário dos funcionários em ordem alfabética com a

primeira letra maiúscula e todas as outras minúsculas.

16. Exiba o nome e o salário dos funcionários em ordem alfabética com todas as

letras maiúsculas. 17. Exiba o nome e o salário dos funcionários em ordem alfabética com todas as

letras minúsculas.

18. Faça a consulta do enunciado 1 adicionando uma coluna que subtraia o

salário novo do salário antigo . O nome da nova coluna deve ser “Aumento”.

Page 3: Pratica1

19. Crie uma consulta para exibir o nome, o numero e o nome do departamento de todos os funcionários.

20. Crie uma listagem exclusiva de todos os cargos que existem no

departamento 80. Inclua o local do departamento na saída.

21. Crie uma consulta para exibir o nome do funcionário, o nome do

departamento, o ID do local e a cidade de todos os funcionários que recebam uma comissão.

22. Exiba o nome e o nome do departamento de todos os funcionários que

tenham um ‘a’ em seus nomes.

23. Crie uma consulta para exibir o nome, o cargo, o numero e o nome do

departamento de todos os funcionários que trabalham em Toronto. 24. Exiba o nome e o numero dos funcionários juntamente com o nome e o

numero de seus gerentes. Renomei as colunas de modo explicativo.

25. Crie uma consulta para exibir o nome, o cargo, salário mínimo e salário

máximo de todos os funcionários. 26. Faca uma consulta para exibir o numero e o nome do departamento

juntamente com o numero e o nome de seu respectivo gerente.

27. Crie uma consulta para exibir o nome dos paises e respectivas regiões onde trabalham os funcionários.

28. Exiba o salário maior, menor, total e médio de todos os funcionários.

Denomine as colunas como Maximo, mínimo, soma e media, respectivamente.

29. Crie uma consulta para exibir o numero de pessoas com o mesmo cargo. 30. Determine o numero de gerentes sem listá-los. 31. Exiba o numero de funcionários na tabela de empregados. 32. Faça uma consulta pra exibir a soma salário dos cargos acima de 10000.

Exiba em seu relatório o respectivo cargo. 33. Faça a consulta acima excluindo os empregados que tem o cargo com um

padrão de caracter igual a IT. 34. Exiba o salário maximo por departamento excluindo os salários máximos

menores que 5000.

Page 4: Pratica1

35. Exiba o salário mínimo por cargo excluindo os salários mínimos menores que 2000.

36. Exiba quantos funcionários trabalham em cada departamento. Mostre em

seu relatório o id_departamento, nome do departamento e quantidade de funcionários.

37. Crie uma consulta para exibir o nome e a data de admissão de qualquer funcionário no mesmo departamento que Lorena. Exclua Lorena .

38. Crie uma consulta para exibir os números e nomes de todos os funcionários que recebam mais que o salário médio. Classifique os resultados em ordem crescente de salário.

39. Crie uma consulta que exiba os números e sobrenomes de todos os

funcionários que trabalhem em um departamento com qualquer funcionário cujo nome contenha um u.

40. Exiba o nome, o numero do departamento e o id do cargo de todos os funcionários cujo id do local do departamento seja 1700.

41. Exiba o nome e o salário dos funcionários subordinados a King. 42. Exiba o numero do departamento, o nome e o id do cargo de todos os

funcionários do departamento Executivo. 43. Crie uma view denominada empregados_vu baseada nos nomes e números

dos funcionários e nos números de departamento da tabela empregados. Altere o cabeçalho do nome do funcionário para empregado.

44. Exiba o conteúdo da view empregados_vu.

45. Usando a view empregados_vu, informe uma consulta para exibir todos os

nomes de funcionários e números de departamentos. 46. Crie uma view que contenha os números, os nomes e os números de

departamento de todos os funcionários do departamento 50.

47. Crie uma view contendo o numero do empregado, nome do empregado, id

departamento, nome departamento de todos os funcionários. 48. Crie uma view contendo todos os dados da tabela de cargos. 49. Insira dados na tabela de cargos através da view

50. Apague os dados inseridos na view de cargos.