I Introduction II Villes III Pokedex
Transcription
I Introduction II Villes III Pokedex
HX Nom : I Introduction Devoir sur machine I Réponse 2 : Vous devez vous rendre sur le site http://h4.tourniaire.org. Là, votre enseignant vous aura indiqué le numéro de la base de donnée à récupérer. Attention à ne surtout pas vous tromper sur cette question : I Question 3 Quelle est la première ville par ordre alphabétique ? ? Réponse 3 : I Question 1 Quel est le numéro de votre base de donnée ? I Réponse 1 : SELECT Le sujet doit se faire en deux heures. Les lignes des bases ci-dessous sont données à titre indicatif pour situer les tables. I Question 4 Combien y a-t-il de régions au total ? Quelle est celle qui contient le plus de villes ? Les réponses marquées d’une étoile vous invitent à préciser une requête qui donnerait exactement le résultat demandé, si vous l’avez. Si vous avez la réponse (mais sans pouvoir y répondre par une unique requête), indiquez-la tout de même. II I Réponse 4 : Villes III L’univers se situe dans des villes, réparties en régions, stockées dans la table lieu, dont le schéma est : On dispose également d’un pokedex, qui décrit les différentes espèces de pokemon dans l’univers, et dont le schéma est 1 : lieu id nom region 1 ... Canalave City ... Sinnoh ... Pokedex pokedex I Question 2 Combien y a-t-il de villes au total ? id espece genus taille poids 1 ... Bulbizarre ... Graine ... 7 ... 69 ... 1. Nous n’utiliserons pas le champ genus dans ce sujet. 1/4 HX Nom : Devoir sur machine — Un id_parent, identifiant du parent du pokemon 2 dans la table elevage ellemême, ou bien NULL si le pokémon n’a pas de parent connu dans la table. — Une date_naissance (flottant compris entre 0 et 100). — Une date_mort (idem, ou NULL si le pokémon est encore vivant). — Un lieu_naissance, identifiant du lieu de naissance dans la table lieu. I Question 5 Combien y a-t-il d’espèces au total ? I Réponse 5 : elevage I Question 6 Quelle est le nom de la troisième espèce la plus grande ? id 1 ... 87 ... ? Réponse 6 : SELECT prenom Ordroba ... Vardrone ... id_espece 217 ... 217 ... id_parentdate_naissance NULL ... 1 ... 0.02 ... 10.67 ... date_mort 36.46 ... 46.67 ... lieu_naissance 178 ... 592 ... I Question 8 Combien y a-t-il de pokemons enregistrés dans l’élevage ? I Réponse 8 : I Question 7 Si on devait construire un bateau avec un individu de chaque espèce, combien ce bateau devrait-il supporter en poids ? I Réponse 7 : I Question 9 Combien y a-t-il de pokemons encore vivants dans l’élevage ? Quel est le prénom du plus vieux pokemon encore vivant ? IV I Réponse 9 : Élevage On construit un élevage à l’instant t = 0 (t est compté en années avec une précision importante pour éviter les égalités). On y note les pokemons qu’on acquiert, ainsi que les éventuelles naissances. Pour chaque pokemon de l’élevage, on indique : I Question 10 Combien y a-t-il d’espèces distinctes représentées dans l’élevage ? — Un id — Un prenom associé à chaque pokemon. — Un id_espece, identifiant de l’espèce dans la table pokedex. 2. Les pokémons se reproduisent par division cellulaire asexuée, disons. 2/4 Nom : HX Devoir sur machine I Question 14 Combien y a-t-il eu de mutations (c’est à dire d’enfants n’ayant pas la même espèce que leur parent) ? ? Réponse 10 : I Réponse 14 : SELECT I Question 15 Combien un pokemon peut-il avoir d’enfant au maximum ? Quel est le prénom du plus vieux pokemon (mort ou vivant) à avoir atteint ce nombre d’enfants ? I Question 11 Dans quelle région y a-t-il eu le plus de naissances ? I Réponse 15 : I Réponse 11 : V I Question 12 Quel est le poids total des pokemons encore vivants dans l’élevage ? Évènements ? Réponse 12 : Il arrive parfois qu’un pokemon fasse gagner de l’argent à son propriétaire (en accomplissant un travail, ou en gagnant un combat). La table events donne la liste de ces évènements sous la forme suivante : SELECT — id est un identifiant unique — id_pokemon est l’identifiant du pokemon ayant gagné l’argent (dans la table elevage) — type est le type de gain (« combat » ou « boulot ») — gain est le montant gagné à cette occasion. — date est le moment où l’argent a été gagné — id_lieu est l’identifiant du lieu où l’argent a été gagné (dans la table lieu) I Question 13 Quel a été le plus jeune age auquel un pokemon a eu un enfant ? Quels étaient les prénoms du parent et de l’enfant ? I Réponse 13 : events 3/4 id id_pokemon type gain date id_lieu 1 ... 2 ... combat ... 56.96 ... 1.71 ... 70 ... Nom : HX I Question 16 Combien d’argent a-t-on gagné au total ? Comment se répartit-il entre les catégories boulot et combat ? Devoir sur machine I Question 20 Quel est le prénom du pokemon qui a gagné le plus d’argent dans sa région natale ? ? Réponse 20 : I Réponse 16 : SELECT I Question 17 Quel est le prénom du pokemon de l’élevage ayant eu son combat le plus jeune ? Le plus vieux ? I Réponse 17 : VI En bonus. . . I Question 21 Une lignée est une suite de pokemons (P1 , P2 , . . . Pn ) tel que Pk soit le parent du pokemon Pk+1 . La longueur de cette lignée est alors n. Quel est la longueur de la plus longue lignée ? Donner le prénom d’un pokemon P1 ayant engendré une plus longue lignée. I Question 18 Quel est le prénom du pokemon qui a effectué le plus de combats dans sa carrière ? I Réponse 18 : I Réponse 21 : I Question 19 De tous les pokemons morts, quel est le prénom de celui qui avait gagné le plus d’argent par an ? I Question 22 La descendance d’un pokemon P est l’ensemble des pokemons Q qui sont dans une lignée (P, . . . , Q) (P inclus). Quel est le prénom du Pokemon ayant la plus grande descendance ? Quelle est la taille de sa descendance ? ? Réponse 19 : I Réponse 22 : SELECT 4/4