Base de données 1

Base de données 1


4.4- Exercices

Laboratoire 2

5.1- Sous-requêtes

Réaliser les manipulations suivantes dans le fichier fournit en répondant dans la section correspondante

Serveur

Insertions

À l'affichage, les valeurs monétaires sont arrondies à 2 décimales, les autres valeurs numériques à l'entier le plus près.

Produits

Récupérer les produits pour chat, donc qui contiennent le mot 'chat' dans le nom ou la description

+-------------------------+------------------------------+------------+----------+----------+-------+-------+
| name | description | sale_start | sale_end | quantity | cost | price |
+-------------------------+------------------------------+------------+----------+----------+-------+-------+
| Croquettes pour chatons | pour les chat de 3 à 9 mois | 2022-07-17 | NULL | 33 | 20.00 | 30.00 |
| Jouet pour chat | NULL | 2022-11-05 | NULL | 156 | 3.00 | 7.99 |
...
+-------------------------+------------------------------+------------+----------+----------+-------+-------+

Récupérer le sommaire des produits, trié par date de fin de vente, quantité en inventaire et profit en calculant les valeurs suivantes

+--------------------------------------------------------+---------+-------+--------+----------+-----------+-------------------------+
| *product* | *years* | cost | price | *profit* | *margins* | *status* |
+--------------------------------------------------------+---------+-------+--------+----------+-----------+-------------------------+
| Croquettes pour chatons: pour les chats de 3 à 9 mois | 1+ | 20.00 | 30.00 | 10.00 | 33% | selling: 33 |
| Sifflet ultrason: Pour appel et dressage des chiens | 2 | 9.99 | 14.99 | 5.00 | 33% | archived |
| Sac de transport | 1 | 66.00 | 129.49 | 63.49 | 49% | clearance: 6 => 396.00$ |
...
+--------------------------------------------------------+---------+-------+--------+----------+-----------+-------------------------+

Supprimer les produits archivés depuis plus de 5 ans, en affichant le nom des items affectés

+------------------+
| name |
+------------------+
| Sifflet ultrason |
...
+------------------+

Ventes

Récupérer le nom des différents clients

+----------------+
| *client* |
+----------------+
| alice cooper |
| bob dylan |
| dave foster |
...
+----------------+

Récupérer les ventes réalisés durant le temps des Fêtes de l'année précédente (15 novembre au 31 décembre), triés du plus anciens au plus récent

+-----------------------+------------+------------+
| id | product | *date* |
+-----------------------+------------+------------+
| alice cooper-20221123 | sifflet | 2022-11-23 |
| bob dylan-20221207 | croquettes | 2022-12-07 |
...
+-----------------------+------------+------------+

Récupérer les ventes de la plus récente à la plus ancienne en calculant

+---------------------+------------------+----------+-------+----------+------------+---------+
| *date* | product | quantity | price | discount | *subtotal* | *total* |
+---------------------+------------------+----------+-------+----------+------------+---------+
| September 23rd 2023 | croquettes | 10 | 22.49 | 30 | 224.90 | 157.43 |
| September 22nd 2023 | sac de transport | 1 | 10.00 | NULL | 10.00 | 10.00 |
...
| November 23rd 2022 | sifflet | 1 | 2.99 | NULL | 2.99 | 2.99 |
+---------------------+------------------+----------+-------+----------+------------+---------+

Récupérer les ventes par produit dont le rabais moyen est de plus de 25%

+------------+----------------+
| product | *avg discount* |
+------------+----------------+
| biscuits | 50% |
| croquettes | 35% |
...
+------------+----------------+

Récupérer le sommaire des ventes pour chaque produit en calculant

+------------------+------------+-----------+------------------+
| product | *$ amount* | *# items* | *# transactions* |
+------------------+------------+-----------+------------------+
| biscuits | 148.01 | 99 | 1 |
| collier | 0.00 | 0 | 1 |
| croquettes | 472.32 | 27 | 3 |
...
+------------------+------------+-----------+------------------+

Récupérer le sommaire des ventes pour chaque année de la plus récente à la plus ancienne, par client en ordre alphabétique, en calculant

+--------+----------------+------------+--------------+
| *year* | *client* | *$ amount* | *# products* |
+--------+----------------+------------+--------------+
| 2023 | alice cooper | 10.00 | 7 |
| 2023 | bob dylan | 100.00 | 1 |
...
| 2022 | alice cooper | 2.99 | 1 |
| 2022 | bob dylan | 44.98 | 1 |
+--------+----------------+------------+--------------+

Récupérer le meilleur client de l'année dernière

+-----------+------------+
| *client* | *$ amount* |
+-----------+------------+
| bob dylan | 44.98 |
+-----------+------------+

Mettre à jour le rabais à 0 s'il est nul

Supprimer les ventes ne contenant aucuns articles en retournant le produit, le nom du client et la date correctement formatée

+---------+------------+----------------+
| product | *date* | *client* |
+---------+------------+----------------+
| Collier | 2023-07-29 | franck sinatra |
...
+---------+------------+----------------+

Remise

Dépôt via LÉA

Envoyer uniquement le fichier .sql fournis contenant vos requêtes

Base de données 1

Nom:

Exécution répétée 0     -0.5     -1     -2
Qualité de rédaction 0     -0.5     -1     -2
Qualité de l'implémentation, arrondis 0     -0.5     -1     -2
Serveur
Base de donnée shop 1     0
Utilisateur alice, mot de passe, privilèges, externe 1     0.5     0
Table products, colonnes, types, attributs 1     0.5     0
Table sales, colonnes, types, attributs 1     0.5     0
Insertions
Minimale products 1     0.5     0
Minimale sales 1     0.5     0
Significatives 0     -0.5     -1     -2
Produits
Le mot chat dans le nom ou description: name, description, sale_start, sale_end, quantity, cost, price 2     1.5     1     0
Sommaire, tri par date de fin, quantité, profit: product, years, cost, price, profit, margins, status 3     2.5     2     1     0
Supprimer archives, > 5 ans: nom 2     1.5     1     0
Ventes
Clients différents: client 1     0.5     0
Durant les Fêtes, année précédente, tri anciens à récent: id, product, date 2     1.5     1     0
Les ventes, tri récente à ancienne: date, product, quantity, price, discount, subtotal, total 2     1.5     1     0
Les ventes par produit, rabais moyen > 25%: product, avg discount 2     1.5     1     0
Sommaire par produit: product, $amount, #items, #transactions 2     1.5     1     0
Sommaire pour chaque année récente, par client alphabétique: year, client, $amount, #products 2     1.5     1     0
Meilleur client, année dernière: client, $ amount 2     1.5     1     0
Mise à jour rabais à 0 si nul 1     0.5     0
Supprimer les ventes sans articles: product, date, client 2     1.5     1     0