Secret (cliquez pour afficher)
Code : SQL
SELECT AVG(nb)
FROM (
SELECT COUNT(*) AS nb
FROM Animal
WHERE espece_id = 1
AND YEAR(date_naissance) >= 2006
AND YEAR(date_naissance) <= 2010
GROUP BY YEAR(date_naissance)
) AS tableIntermedaire;
Ici, il fallait penser à faire une sous-requête dans la clause FROM. Si vous n'avez pas trouvé, rappelez-vous qu'il faut penser
par étapes. Vous voulez la moyenne du nombre de chiens nés chaque année ? Commencez par obtenir le nombre de chiens
nés chaque année, puis seulement demandez-vous comment faire la moyenne.
5. Afficher la date au format ISO du 5 e anniversaire des animaux dont on connaît soit le père, soit
la mère.
Secret (cliquez pour afficher)
Code : SQL
SELECT DATE_FORMAT(DATE_ADD(date_naissance, INTERVAL 5 YEAR),
GET_FORMAT(DATE, 'ISO')) AS dateIso
FROM Animal
WHERE pere_id IS NOT NULL
OR mere_id IS NOT NULL;
Pour cette dernière question, il fallait juste imbriquer plusieurs fonctions différentes. À nouveau, si vous n'avez pas réussi,
c'est sans doute parce que vous ne décomposez pas le problème correctement.
À partir de maintenant, si j'en vois encore un stocker ses dates sous forme de chaîne de caractères, ou sous forme de INT pour
stocker un timestamp Unix, je le mords !
Avec cette partie sur les dates s'achèvent les parties "basiques" de ce tutoriel. Vous devriez maintenant avoir les connaissances
suffisantes pour gérer la base de données d'un petit site web ou d'une application toute simple, sans toutefois exploiter vraiment
les possibilités de MySQL. Les parties suivantes aborderont des notions un peu plus avancées.
Partie 4 : Fonctions : manipuler les dates
217/414
www.openclassrooms.com
Code : SQL
SELECT AVG(nb)
FROM (
SELECT COUNT(*) AS nb
FROM Animal
WHERE espece_id = 1
AND YEAR(date_naissance) >= 2006
AND YEAR(date_naissance) <= 2010
GROUP BY YEAR(date_naissance)
) AS tableIntermedaire;
Ici, il fallait penser à faire une sous-requête dans la clause FROM. Si vous n'avez pas trouvé, rappelez-vous qu'il faut penser
par étapes. Vous voulez la moyenne du nombre de chiens nés chaque année ? Commencez par obtenir le nombre de chiens
nés chaque année, puis seulement demandez-vous comment faire la moyenne.
5. Afficher la date au format ISO du 5 e anniversaire des animaux dont on connaît soit le père, soit
la mère.
Secret (cliquez pour afficher)
Code : SQL
SELECT DATE_FORMAT(DATE_ADD(date_naissance, INTERVAL 5 YEAR),
GET_FORMAT(DATE, 'ISO')) AS dateIso
FROM Animal
WHERE pere_id IS NOT NULL
OR mere_id IS NOT NULL;
Pour cette dernière question, il fallait juste imbriquer plusieurs fonctions différentes. À nouveau, si vous n'avez pas réussi,
c'est sans doute parce que vous ne décomposez pas le problème correctement.
À partir de maintenant, si j'en vois encore un stocker ses dates sous forme de chaîne de caractères, ou sous forme de INT pour
stocker un timestamp Unix, je le mords !
Avec cette partie sur les dates s'achèvent les parties "basiques" de ce tutoriel. Vous devriez maintenant avoir les connaissances
suffisantes pour gérer la base de données d'un petit site web ou d'une application toute simple, sans toutefois exploiter vraiment
les possibilités de MySQL. Les parties suivantes aborderont des notions un peu plus avancées.
Partie 4 : Fonctions : manipuler les dates
217/414
www.openclassrooms.com
