From 4e3c19d57854fdd7102234bbb923fcc992b0b5eb Mon Sep 17 00:00:00 2001 From: DouglasFlorido Date: Tue, 23 Mar 2021 13:38:42 -0300 Subject: [PATCH 1/2] =?UTF-8?q?Feito=20At=C3=A9=20o=20Exercicio=203?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Semana15/Aula2/Exercicios/Doulgas Florido.md | 115 +++++++++++++++++++ 1 file changed, 115 insertions(+) create mode 100644 Semana15/Aula2/Exercicios/Doulgas Florido.md diff --git a/Semana15/Aula2/Exercicios/Doulgas Florido.md b/Semana15/Aula2/Exercicios/Doulgas Florido.md new file mode 100644 index 000000000..266ddac80 --- /dev/null +++ b/Semana15/Aula2/Exercicios/Doulgas Florido.md @@ -0,0 +1,115 @@ +# Douglas Florido +## Exercicios Semana 15 Aula 2 + +### Exercicio 1 + +Explique os seguintes comandos +> a) +~~~SQL +ALTER TABLE Actor DROP COLUMN salary; +~~~ +Altera a tabela "Actor" deletando toda coluna chamada "salary" + +> b) +~~~SQL +ALTER TABLE Actor CHANGE gender sex VARCHAR(6); +~~~ +Altera a Tabela "Actor" mudando a coluna "gender" para o nome "sex" + +> c) +~~~SQL +ALTER TABLE Actor CHANGE gender gender VARCHAR(255); +~~~ +Altera a Tabela "Actor" mudando a coluna "gender" para uma "gender VARCHAR(255)", ou seja, de 6 caracteres para 255 + +> d) Agora, altere a coluna gender da tabela ACTOR para que ele aceite strings com até 100 caracteres + +~~~SQL +ALTER TABLE Actor CHANGE gender gender VARCHAR(100); +~~~ + +### Exercicio 2 + +> a) Escreva uma query que atualize o nome e a data de nascimento do ator com o id 003 + +~~~SQL +UPDATE Actor +SET birth_date = "1930-04-25" +WHERE id = "003"; +~~~ + +> b )Escreva uma query que atualize o nome da atriz Juliana Paes para JULIANA PÃES. +Então, escreva outra query para voltar ao nome anterior. + +~~~SQL +UPDATE Actor +SET name = "JULIANA PÃES" +WHERE name = "Juliana Paes"; +~~~ + +~~~SQL +UPDATE Actor +SET name = "Juliana Paes" +WHERE name = "JULIANA PÃES"; +~~~ + +> c) Escreva uma query que atualize todas as informações do ator com o id 005 + +~~~SQL +UPDATE Actor +SET name = "Juliana Pães", salary = 800000, birth_date = "1980-04-27" +WHERE id = "005"; +~~~ + +> d) Escreva uma query em que você tente atualizar um dado da tabela que não existe (com um id inválido, por exemplo). +Teste, anote e explique o resultado. + +~~~SQL +UPDATE Actress +SET name = "Juliana Pães", salary = 800000, birth_date = "1980-04-27" +WHERE id = "005"; +~~~ + +~~~SQL +Error Code: 1146. Table 'epps-douglas-florido.Actress' doesn't exist +~~~ + +Esse Erro diz que a tabela "Actress" não existe + +### Exercicio 3 + +> a) Escreva uma query que apague a atriz com o nome Fernanda Montenegro + +~~~SQL +DELETE FROM Actor WHERE name = "Fernanda Montenegro"; +~~~ + +> b) Escreva uma query que apague todos os atores (do gênero male) com o salário maior do que R$1.000.000,00 + +~~~SQL +DELETE FROM Actor WHERE (salary > 1000000 AND gender = "male"); +~~~ + + + + + + + + + + + + + + + + + + + + + + + + From 0a0ff4455bdf9a3913a577ffde987e0768ed3cea Mon Sep 17 00:00:00 2001 From: DouglasFlorido Date: Tue, 23 Mar 2021 15:11:14 -0300 Subject: [PATCH 2/2] Terminado o exercicio --- Semana15/Aula2/Exercicios/Doulgas Florido.md | 171 +++++++++++++++++++ Semana15/Aula2/Warmup.txt | 1 + 2 files changed, 172 insertions(+) create mode 100644 Semana15/Aula2/Warmup.txt diff --git a/Semana15/Aula2/Exercicios/Doulgas Florido.md b/Semana15/Aula2/Exercicios/Doulgas Florido.md index 266ddac80..c8066f42e 100644 --- a/Semana15/Aula2/Exercicios/Doulgas Florido.md +++ b/Semana15/Aula2/Exercicios/Doulgas Florido.md @@ -90,9 +90,180 @@ DELETE FROM Actor WHERE name = "Fernanda Montenegro"; DELETE FROM Actor WHERE (salary > 1000000 AND gender = "male"); ~~~ +### Exercicio 4 +> a) Escreva uma query que pegue o maior salário de todos os atores e atrizes* +~~~SQL +SELECT MAX(salary) FROM Actor; +~~~ + +> b) Escreva uma query que pegue o menor salário das atrizes + +~~~SQL +SELECT MIN(salary) FROM Actor WHERE gender = "female"; +~~~ + +> c) Escreva uma query que pegue a quantidade de atrizes +~~~SQL +SELECT COUNT(*) FROM Actor WHERE gender = "female"; +~~~ +> d) Escreva uma query que pegue a soma de todos os salários + +~~~SQL +SELECT SUM(salary) FROM Actor; +~~~ + +### Exercicio 5 + +> a) Releia a última query. Teste-a. Explique o resultado com as suas palavras +~~~SQL +SELECT COUNT(*), gender +FROM Actor +GROUP BY gender; +~~~ +Conta cada Linha, e mostra o genero, da tabela ACtor, agrupando pelo Genero + +> b) Faça uma query que retorne somente o id e o nome dos atores em ordem decrescente alfabética +~~~SQL +SELECT id, name FROM Actor +ORDER BY name DESC; +~~~ +> c) Faça uma query que retorne todos os atores ordenados pelo salário + +~~~SQL +SELECT * FROM Actor +WHERE gender = "male" +ORDER BY salary ASC; +~~~ + +> d) Faça uma query que retorne os atores com os três maiores salarios + +~~~SQL +SELECT * FROM Actor +WHERE gender = "male" +ORDER BY salary ASC +LIMIT 3; +~~~ + +> e) Faça uma query que retorne a média de salário por gênero + +~~~SQL +SELECT AVG(salary), gender +FROM Actor +GROUP BY gender; +~~~ + +### Exercicio 6 + +> a) Altere a tabela de `Movie` e adicione um novo parâmetro: `playing_limit_date` que indique a data limite em que o filme será passado no cinema. + +~~~SQL +ALTER TABLE Movies ADD playing_limit_date DATE; +~~~ + +> b) Altere a tabela de `Movie` para que o parâmetro `rating` possa aceitar valores não inteiros, como, por exemplo, uma avaliação `8.5`. + +~~~SQL +ALTER TABLE Movies CHANGE rating rating FLOAT; +~~~ + +> c) Atualize dois filmes de tal forma que tenhamos um que ainda esteja em cartaz e um que já tenha saído + +~~~SQL +UPDATE Movies +SET +playing_limit_date = "2020-12-31" +WHERE id = "001"; +~~~ + +~~~SQL +UPDATE Movies +SET playing_limit_date = "2008-07-02" +WHERE id = "002"; +~~~ + +> d) Delete algum dos filmes, mas guarde o id. Tente fazer uma query para atualizar a sinopse desse filme que você acabou de deletar (usando o mesmo id). Anote o resultado e explique. + +~~~SQL +DELETE FROM Movies WHERE id = "001"; +~~~ + +~~~SQL +UPDATE Movies +SET sinopse = "zyk4" +WHERE id = "001"; +~~~ + +~~~SQL +0 row(s) affected Rows matched: 0 Changed: 0 Warnings: 0 +~~~ + +Ele atualizou, mas nao encontrou nenhuma linha para atualizar, ou seja, o comando da correto, só nao possui linha para atualizar + +### Exercicio 7 + +> a) Quantos filmes em cartaz possuem avaliações maiores do que `7.5`? + +~~~SQL +SELECT COUNT(*) FROM Movies WHERE (avaliacao > 7.5); +~~~ + +> b) Qual a média das avaliações dos filmes? + +~~~SQL +SELECT AVG(avaliacao) FROM Movies; +~~~ + +> c) Qual a quantidade de filmes em cartaz? + +~~~SQL +SELECT COUNT(avaliacao) FROM Movies WHERE playing_limit_date>CURDATE(); +~~~ + +> d) Qual a quantidade de filmes que ainda irão lançar? + +~~~SQL +SELECT COUNT(avaliacao) FROM Movies WHERE playing_limit_date e) Qual a maior nota dos filmes? + +~~~SQL +SELECT MAX(avaliacao) FROM Movies; +~~~ + +> f) Qual a menor nota dos filmes? + +~~~SQL +SELECT MIN(avaliacao) FROM Movies; +~~~ + +### Exercicio 8 + +> a) Retorne todos os filmes em ordem alfabética + +~~~SQL +SELECT * FROM Movies ORDER BY nome ASC; +~~~ + +> b) Retorne os 5 primerios filmes em ordem descrente alfabética* + +~~~SQL +SELECT * FROM Movies ORDER BY nome DESC LIMIT 5; +~~~ + +> c) Retorne os 3 filmes mais recentes em cartaz + +~~~SQL +SELECT * from Movies ORDER BY playing_limit_date DESC LIMIT 3; +~~~ + +> d) Retorne os 3 filmes melhor avalidos + +~~~SQL +SELECT * FROM Movies ORDER BY avaliacao DESC LIMIT 3; +~~~ diff --git a/Semana15/Aula2/Warmup.txt b/Semana15/Aula2/Warmup.txt new file mode 100644 index 000000000..4837d1aba --- /dev/null +++ b/Semana15/Aula2/Warmup.txt @@ -0,0 +1 @@ +select * from Actor \ No newline at end of file