You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

53 lines
1.7 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

-- Combien dathlètes y a til ?
SELECT COUNT(*) FROM athlete;
-- Afficher les épreuves ayant eu lieu le 29 juillet 2021.
SELECT * FROM epreuve WHERE dateE = '2021-07-29';
-- Afficher le nom des disciplines ayant une épreuve le 29 juillet 2021.
SELECT DISTINCT e.nom FROM epreuve e
INNER JOIN discipline d ON e.discipl = d.code
WHERE dateE = '2021-07-29';
SELECT nom, prenom, dateNaiss FROM athlete
WHERE pays = (SELECT code FROM pays WHERE nom = 'France')
ORDER BY nom, prenom;
SELECT COUNT(*) medailles FROM resultat
WHERE athlete = (
SELECT code FROM athlete
WHERE nom = 'LEDECKY'
AND prenom = 'Kathleen'
);
SELECT a.nom nom_vainqueure, a.prenom prenom_vainqueure, p.nom pays_vainqueur, e.nom epreuve, d.nom discipline
FROM epreuve e
INNER JOIN discipline d ON d.code = e.discipl
INNER JOIN resultat r ON r.epreuve = e.code
INNER JOIN athlete a ON a.code = r.athlete
INNER JOIN pays p ON p.code = a.pays
WHERE e.code = 'E059'
AND medaille = (SELECT place FROM medaille WHERE couleur = 'Or');
-- Qui est lathlète le ou la plus jeune, parmi ceux dont on connaît la date de naissance ?
SELECT * FROM athlete
WHERE dateNaiss = (
SELECT MAX(dateNaiss) FROM athlete
WHERE dateNaiss IS NOT NULL
);
-- Qui est lathlète le ou la plus agée et quel était son âge à louverture des jeux (le 23 juillet2021) ?
SELECT *, ROUND(('2021-07-23'-dateNaiss) / 365.2422, 1) age FROM athlete
WHERE dateNaiss = (
SELECT MIN(dateNaiss) FROM athlete
WHERE dateNaiss IS NOT NULL
);
-- Lister les pays dont le nom commence par A et qui nont remporté aucune médaille.
SELECT * FROM pays
WHERE code NOT IN (
SELECT a.pays FROM resultat r
INNER JOIN athlete a ON a.code = r.athlete
) AND nom LIKE 'A%';