Il se peut que ce soit de notre faute d’avoir laissé nos nouveaux stagiaires examiner notre collection de données sans que tout le monde chez SuperHero Inc. ait les compétences en matière de données que nous aimerions.
Nous avons reçu des rapports selon lesquels ils ont simplement pris d’anciennes feuilles de marquage papier et les ont transformées en données collectées.
Nos analystes ne sont pas particulièrement enthousiastes à propos des résultats obtenus et nous ont demandé de nettoyer un peu les données.
Les superhéros sont actuellement enregistrés sur une seule ligne et un ++, + ou – a été marqué dans la colonne pour chaque superpouvoir qu’ils possèdent.
Les analystes ont des problèmes pour compter les valeurs et les afficher facilement, et ils nous ont demandé si nous pourrions créer une nouvelle ligne pour chaque pouvoir de héros.
Les stagiaires ont créé cette table :
Données originales
Comme vous pouvez le voir, chaque héros a 2 pouvoirs, notés comme ‘++’ pour le pouvoir principal et + pour un pouvoir secondaire.
Ce que les analystes recherchent, c’est le résultat suivant :
Résultat attendu
La tâche pour cette semaine :
- Transformer les données de manière à ce que chaque héros ait 1 ligne
- Mettre les pouvoirs ++ dans la colonne « main_power »
- Mettre les pouvoirs + dans la colonne « secondary_power »
Données de départ
create or replace table hero_powers (
hero_name VARCHAR(50),
flight VARCHAR(50),
laser_eyes VARCHAR(50),
invisibility VARCHAR(50),
invincibility VARCHAR(50),
psychic VARCHAR(50),
magic VARCHAR(50),
super_speed VARCHAR(50),
super_strength VARCHAR(50)
);
insert into hero_powers (hero_name, flight, laser_eyes, invisibility, invincibility, psychic, magic, super_speed, super_strength) values ('The Impossible Guard', '++', '-', '-', '-', '-', '-', '-', '+');
insert into hero_powers (hero_name, flight, laser_eyes, invisibility, invincibility, psychic, magic, super_speed, super_strength) values ('The Clever Daggers', '-', '+', '-', '-', '-', '-', '-', '++');
insert into hero_powers (hero_name, flight, laser_eyes, invisibility, invincibility, psychic, magic, super_speed, super_strength) values ('The Quick Jackal', '+', '-', '++', '-', '-', '-', '-', '-');
insert into hero_powers (hero_name, flight, laser_eyes, invisibility, invincibility, psychic, magic, super_speed, super_strength) values ('The Steel Spy', '-', '++', '-', '-', '+', '-', '-', '-');
insert into hero_powers (hero_name, flight, laser_eyes, invisibility, invincibility, psychic, magic, super_speed, super_strength) values ('Agent Thundering Sage', '++', '+', '-', '-', '-', '-', '-', '-');
insert into hero_powers (hero_name, flight, laser_eyes, invisibility, invincibility, psychic, magic, super_speed, super_strength) values ('Mister Unarmed Genius', '-', '-', '-', '-', '-', '-', '-', '-');
insert into hero_powers (hero_name, flight, laser_eyes, invisibility, invincibility, psychic, magic, super_speed, super_strength) values ('Doctor Galactic Spectacle', '-', '-', '-', '++', '-', '-', '-', '+');
insert into hero_powers (hero_name, flight, laser_eyes, invisibility, invincibility, psychic, magic, super_speed, super_strength) values ('Master Rapid Illusionist', '-', '-', '-', '-', '++', '-', '+', '-');
insert into hero_powers (hero_name, flight, laser_eyes, invisibility, invincibility, psychic, magic, super_speed, super_strength) values ('Galactic Gargoyle', '+', '-', '-', '-', '-', '-', '++', '-');
insert into hero_powers (hero_name, flight, laser_eyes, invisibility, invincibility, psychic, magic, super_speed, super_strength) values ('Alley Cat', '-', '++', '-', '-', '-', '-', '-', '+');
Et n’oubliez pas, si vous souhaitez participer aux défis:
- Inscrivez-vous en tant que membre de Frosty Friday. –> Vous pouvez le faire en cliquant sur la barre latérale, puis en cliquant sur ‘REGISTER‘ (notez que s’inscrire à notre liste de diffusion ne vous donne pas de compte Frosty Friday).
- Publiez votre code sur GitHub et rendez-le accessible au public (consultez notre guide si vous ne savez pas comment faire, disponible ici)
- Postez l’URL dans les commentaires du défi. Si vous avez des questions techniques que vous souhaitez poser à la communauté, vous pouvez les poser ici, sur notre thread dédié.
Laisser un commentaire
Vous devez vous connecter pour publier un commentaire.