Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

0
respostas

Mão na massa: hora da prática

--Selecione os primeiros 5 registros da tabela clientes, ordenando-os pelo nome em ordem crescente.
select * from clientes
order by nome cresc;
limit 5

--Encontre todos os produtos na tabela produtos que não têm uma descrição associada (suponha que a coluna de descrição possa ser nula).
SELECT * from produtos
where descricao is null;

--Liste os funcionários cujo nome começa com 'A' e termina com 's' na tabela funcionarios.
SELECT * from funcionarios
where nome like 'A%' and nome like '%s';

--Exiba o departamento e a média salarial dos funcionários em cada departamento na tabela funcionarios, agrupando por departamento,
--apenas para os departamentos cuja média salarial é superior a $5000.
SELECT departamento, AVG(salario) as media_salarial from funcionarios
group by departamento
HAVING AVG(salario) > 5000

--Selecione todos os clientes da tabela clientes e concatene o primeiro e o último nome, além de calcular o comprimento total do nome completo.
SELECT 'Nome completo: ' || nome || ' ' || sobrenome || ' tem ' || LENGTH(nome || ' ' || sobrenome) || ' caracteres' AS resultado
FROM clientes;

--Para cada venda na tabela vendas, exiba o ID da venda, a data da venda e a diferença em dias entre a data da venda e a data atual.
SELECT id_venda, data_venda, JULIANDAY(date('now')) - JULIANDAY(data_venda) as diferenca_dias
FROM vendas

--Selecione todos os itens da tabela pedidos e arredonde o preço total para o número inteiro mais próximo.
select nome, ceil(preco_total) from pedidos

--Converta a coluna data_string da tabela eventos, que está em formato de texto (YYYY-MM-DD), para o tipo de data e selecione todos os eventos após '2023-01-01'.
SELECT * FROM eventos
WHERE DATE(data_string) > '2023-01-01';

--Na tabela avaliacoes, classifique cada avaliação como 'Boa', 'Média', ou 'Ruim' com base na pontuação: 1-3 para 'Ruim', 4-7 para 'Média', e 8-10 para 'Boa'.
select avaliacao, nota
CASE
when nota BETWEEN(8,10) then 'Boa'
when nota BETWEEN(1,3) then 'Ruim'
when nota BETWEEN(4,7) then 'Média'
end as classificacao
from avaliacoes

--Altere o nome da coluna data_nasc para data_nascimento na tabela funcionarios e selecione todos os funcionários que nasceram após '1990-01-01'.
ALTER TABLE funcionarios RENAME COLUMN data_nasc TO data_nascimento;

SELECT * FROM funcionarios
WHERE data_nascimento > '1990-01-01';
where data_nascimento BETWEEN (date('now'),'1990-01-01')