Défi de fonctions de conversion MySQL

MySQLBeginner
Pratiquer maintenant

Introduction

Dans ce projet, vous allez apprendre à utiliser les fonctions de conversion courantes de MySQL pour extraire des informations pertinentes de la table emp dans la base de données personnel. Vous allez apprendre à accéder à MySQL, à importer des données et à écrire un script pour effectuer diverses conversions de dates et d'heures sur les données.

👀 Aperçu

MariaDB [personnel]> SOURCE /home/labex/project/ConversionFunctions.sql;
+------------+------------+
| Date d'entrée | Nouvelle date |
+------------+------------+
| 80-12      | 1980-12-31 |
| 81-02      | NULL       |
| 81-02      | NULL       |
| 81-04      | 1981-04-16 |
| 81-09      | NULL       |
| 81-05      | 1981-05-15 |
| 81-06      | 1981-06-23 |
| 87-06      | 1987-06-27 |
| 81-11      | 1981-11-31 |
| 81-09      | 1981-09-22 |
| 87-06      | 1987-06-27 |
| 81-12      | 1981-12-17 |
| 81-12      | 1981-12-17 |
| 82-01      | NULL       |
+------------+------------+
14 lignes affectées, 4 avertissements (0,000 sec)

🎯 Tâches

Dans ce projet, vous allez apprendre :

  • Comment accéder à MySQL en utilisant la commande sudo sans mot de passe
  • Comment importer des données à partir d'un fichier SQL dans la base de données MySQL
  • Comment écrire un script SQL pour effectuer des conversions de dates et d'heures à l'aide de fonctions telles que DATE_FORMAT() et STR_TO_DATE()
  • Comment afficher les résultats des fonctions de conversion avec des alias appropriés

🏆 Réalisations

Après avoir terminé ce projet, vous serez capable de :

  • Comprendre comment utiliser les fonctions de conversion de MySQL pour manipuler et afficher des données de dates et d'heures
  • Écrire des scripts SQL pour effectuer des transformations de données complexes
  • Appliquer vos connaissances de MySQL pour résoudre des problèmes de traitement de données du monde réel

Accéder à MySQL et importer les données

Dans cette étape, vous allez apprendre à accéder à MySQL en utilisant la commande sudo sans mot de passe, et à importer les données de /home/labex/project/personnel.sql dans la base de données personnel.

  1. Démarrer le service MySQL :
sudo service mysql start
  1. Accéder à MySQL en utilisant la commande sudo sans mot de passe :
sudo mysql
  1. Importer les données de /home/labex/project/personnel.sql dans la base de données personnel :
MariaDB [(none)]> SOURCE /home/labex/project/personnel.sql;

Écrire le script de fonctions de conversion

Dans cette étape, vous allez apprendre à écrire le script ConversionFunctions.sql pour extraire des informations pertinentes de la table emp dans la base de données personnel à l'aide des fonctions de conversion courantes de MySQL.

  1. Ouvrez le fichier ConversionFunctions.sql.
  2. Ajoutez la requête SQL suivante au fichier ConversionFunctions.sql :
SELECT DATE_FORMAT(hiredate, '%y-%m') AS `Date d'entrée`,
       DATE_FORMAT(STR_TO_DATE(CONCAT(DATE_FORMAT(hiredate, '%Y%m%d') + 14), '%Y%m%d'), '%Y-%m-%d') AS `Nouvelle date`
FROM emp;

Cette requête effectue les tâches suivantes :

  • Extrait la date d'embauche et la date révisée pour tous les employés de la table emp.
  • Affiche la date d'embauche au format yy-MM.
  • Ajoute 14 jours à la date d'embauche, la convertit au format de date à l'aide de la fonction STR_TO_DATE() et l'affiche au format yyyy-MM-dd.
  • Utilise les alias Date d'entrée et Nouvelle date pour afficher les résultats.
  1. Enregistrez le fichier ConversionFunctions.sql.

Exécuter le script de fonctions de conversion

Dans cette étape, vous allez apprendre à exécuter le script ConversionFunctions.sql dans MySQL.

  1. Dans l'invite de commande MySQL, exécutez la commande suivante pour exécuter le script ConversionFunctions.sql :
MariaDB [personnel]> SOURCE /home/labex/project/ConversionFunctions.sql;

Cela exécutera la requête SQL dans le fichier ConversionFunctions.sql et affichera les résultats.

La sortie devrait ressembler à ceci :

+------------+------------+
| Date d'entrée | Nouvelle date |
+------------+------------+
| 80-12      | 1980-12-31 |
| 81-02      | NULL       |
| 81-02      | NULL       |
| 81-04      | 1981-04-16 |
| 81-09      | NULL       |
| 81-05      | 1981-05-15 |
| 81-06      | 1981-06-23 |
| 87-06      | 1987-06-27 |
| 81-11      | 1981-11-31 |
| 81-09      | 1981-09-22 |
| 87-06      | 1987-06-27 |
| 81-12      | 1981-12-17 |
| 81-12      | 1981-12-17 |
| 82-01      | NULL       |
+------------+------------+
14 lignes affectées, 4 avertissements (0,000 sec)

Cette sortie affiche la date d'embauche et la date révisée pour tous les employés de la table emp, avec la date d'embauche au format yy-MM et la date révisée au format yyyy-MM-dd.

Résumé

Félicitations ! Vous avez terminé ce projet. Vous pouvez pratiquer plus de laboratoires sur LabEx pour améliorer vos compétences.

✨ Vérifier la solution et pratiquer✨ Vérifier la solution et pratiquer✨ Vérifier la solution et pratiquer