Lista Banco de Dados
Um atleta participa de várias competições e uma competição (ex: Olimpíadas, Pan, Copa do Mundo, etc.) é composta por vários atletas, sendo este relacionamento feito através da participação. Considere as seguintes tabelas (as chaves primárias estão sublinhadas):
ATLETA (COD_AT, NOME_AT, SALARIO, IDADE, ESPORTE, PAÍS_AT)
PARTICIPACAO (COD_AT, COD_COMP, QTDE_MEDALHAS, VALOR_PREMIO)
COMPETICAO (COD_COMP, TIPO_COMP, CIDADE_COMP, PAIS_COMP, ANO_COMP)
Elabore os seguintes comandos SQL:
1) Relação dos atletas e de seus esportes cujos nomes dos atletas começam com M.
SELECT NOME_AT AS NOME, ESPORTE FROM ATLETA
WHERE NOME_AT LIKE 'M%'
2) Quantidade de competições por nome do país, em ordem decrescente da quantidade
SELECT PAIS_COMP, COUNT(*) FROM COMPETICAO
GROUP BY PAIS_COMP
3) Somatório dos salários dos atletas por país, mas apenas para os países com mais de 3 atletas
SELECT PAIS_COMP, SUM(SALARIO), COUNT(DISTINCT PAIS_AT) FROM COMPETICAO C, PARTICIPACAO P, ATLETA A
WHERE C.COD_COMP = P.COD_COMP AND A.COD_AT = P.COD_AT
GROUP BY PAIS_COMP
HAVING COUNT(*)>3
4) Valor do maior e do menor salário do atleta para cada país, em ordem alfabética do país
5) Relação com o nome do atleta, esporte e salário para os atletas com salário entre R$ 5 mil e R$ 10 mil reais
SELECT NOME_AT, ESPORTE, SALARIO FROM ATLETA
WHERE SALARIO BETWEEN 5000 AND 10000
6) Relação com os códigos dos atletas que participaram de mais de uma competição
SELECT A.COD_AT, COUNT(DISTINCT COD_COMP) FROM ATLETA A, PARTICIPACAO P
WHERE A.COD_AT = P.COD_AT
GROUP BY A.COD_AT
HAVING COUNT(DISTINCT P.COD_COMP)>1
7) Relação dos distintos esportes praticados pelos atletas, sendo que o esporte deve ter L como a terceira letra
SELECT DISTINCT ESPORTE FROM ATLETA
WHERE ESPORTE LIKE '__L%'
8) Quantidade de distintos países que foram sede de competição
SELECT DISTINCT PAIS_COMP FROM COMPETICAO
9) Relação com os