Dans cette section, vous trouverez des ressources sur les cours que j'enseigne à savoir de la documentation, du code, des vidéos etc. Dès que je trouve quelque chose d'intéressant à partager, je le mettrai à disposition ici pour mes étudiants.
Travaux dirigés 5
##Auteur : Enseignant ##École : Collège Marie Victorin ##Session : Hiver 2026 ##Titre du cours : Introduction aux bases de données ##Titre du programme : Travaux dirigés 5 ##Version : 1.0 ##Date : 00/00/2026 ##Langage et version : SQL ##Moteur : SQL Server Express
-- Les requêtes sélection dans le langage SQL -- Objectif : -- Ce travail dirigé portera sur la création de requêtes sélection dans le langage SQL -- =================================================================================== -- *************************************************************************** -- Vérifications à faire systématiquement AVANT d'écrire les requêtes -- Vérifier la structure de la table à utiliser, c'est à dire : -- Le nom de la table -- Le nom des colonnes -- Le type des colonnes -- Les données contenues dans la table -- Base de données à utiliser : Xtremefr -- *************************************************************************** -- --------- -- Requête 1 -- Écrire une requête qui affiche la liste des clients non nord-américains, propriétaires et qui ont acheté l’année dernière pour moins de 50 000 eur. -- La liste sera triée en ordre croissant par pays et en ordre décroissant du montant d’achat. -- On affichera : -- le nom du client -- le poste occupé par le contact chez le client -- les ventes de l’année dernière -- l’adresse courriel -- le téléphone -- Pays -- Votre code ici SELECT [Nom du client], [Poste occupé], [Adresse électronique], [Téléphone], [Pays], [Ventes de l'année dernière] FROM [dbo].[Clients] WHERE NOT (Pays LIKE '%am%rique' OR Pays LIKE 'canada') AND [Poste occupé] LIKE 'propri%' AND [Ventes de l'année dernière] < 50000 ORDER BY [Pays], [Ventes de l'année dernière] DESC;
-- --------- -- Requête 2 -- Table : Commandes -- Écrire une requête qui affiche les commandes en retard. -- Une commande est considérée en retard lorsqu’elle a été expédiée après la date convenue (Date de besoin dans notre cas). Ce champ virtuel nous dit de combien de jours la commande est en retard. -- On affichera les colonnes suivantes -- * L'ID commande -- * La date d'expédition -- * La date de besoin -- * Le montant de la commande -- * Le numéro de commande -- * Le nombre de jours de retard -- Votre code ici SELECT [ID commande], [Date d'expédition], [Date de besoin], [Montant commande], [Numéro de commande], [Date d'expédition] - [Date de besoin] JoursRetard FROM [dbo].[Commandes] WHERE (((Commandes.[Date d'expédition]) > [Date de besoin])); -- Version 2 --SELECT -- Commandes.[ID commande], -- Commandes.[Date d'expédition], -- Commandes.[Date de besoin], -- [Date d'expédition]-[Date de besoin] AS [En retard] --FROM Commandes --WHERE ((([Date d'expédition]-[Date de besoin])>0));
-- --------- -- Requête 3 -- Table : Commandes -- Écrire une requête qui affiche les commandes dont la date d’expédition est inférieure à la date de besoin mais qui n’ont pas encore été expédiée. -- On affichera les colonnes suivantes : -- • L’ID Commande -- • Montant de la commande -- • Date de besoin -- • Date d’expédition -- • Commande expédiée -- Votre code ici SELECT [ID commande], [Montant commande], [Date de commande], [Date de besoin], [Date d'expédition], [Commande expédiée] FROM [dbo].[Commandes] WHERE ([Date d'expédition] < [Date de besoin] AND [Commande expédiée]= 0);
-- --------- -- Requête 4 -- Table : Commandes -- Écrire une requête qui affiche les commandes qui ne sont pas en retard et pour lesquelles aucun paiement n’a encore été reçu. -- On affichera les colonnes suivanates : -- • L’ID Commande -- • Montant de la commande -- • Date de besoin -- • Date d’expédition -- Votre code ici SELECT [ID commande], [Montant commande], [Date de besoin], [Date d'expédition], [Paiement reçu] FROM [dbo].[Commandes] WHERE ((([Date d'expédition])<=[Date de besoin]) AND (([Paiement reçu]) = 0));
-- ---------- -- Requête 5 -- Table : Achats -- Écrire une requête qui affiche les produits qui ne sont pas en commande. -- On affichera les colonnes suivantes : -- • ID Produit -- • Unités en commande -- • Unités en stock -- • Seuil de réapprovisonnement -- • Numéro de commande -- Votre code ici SELECT [ID produit], [Unités en commande], [Unités en stock], [Seuil de réapprovisionnement], [Numéro de commande] FROM [dbo].[Achats] WHERE [Unités en commande] = 0 AND [Numéro de commande] IS NULL;
-- ---------- -- Requête 6 -- Table : Achats -- Écrire une requête qui affiche les produits qui doivent être réapprovisionnés et la nouvelle quantité en stock après le réapprovisionnement -- Précisions -- ========== -- Unités en commande : C’est la quantité du produit commandée auprès des fournisseurs par l'entreprise -- Unités en stock : C’est la quantité du produit restant en stock -- Seuil de réappro : C’est seuil à partir duquel on doit réapprovisionner le produit -- On affichera les colonnes suivantes : -- • ID Produit -- • Unités en stock -- • Seuil de réapprovisionnement -- • Unités en commande -- • Nouveau stock -- Votre code ici SELECT [ID produit], [Unités en stock], [Seuil de réapprovisionnement], [Unités en commande], [Unités en commande] + [Unités en stock] AS [Nouveau stock] FROM [dbo].[Achats] WHERE ([Unités en stock] <= [Seuil de réapprovisionnement]) AND [Numéro de commande] IS NOT NULL;
-- ---------- -- Requête 7 -- Table : ici vous devez déterminer la table qui contient les informations pour écrire la requête -- Écrire une requête qui affiche les commandes n’ayant pas de numéro de commande, (pas l’ID Commande) et qui doivent être réapprovisionnés. -- On affichera les colonnes suivantes : -- • ID du Produit -- • Unités en commande -- • Unités en stock -- • Numéro de commande -- • Le seuil de réapprovisionnement -- • -- Votre code ici SELECT [ID produit], [Unités en commande], [Unités en stock], [Seuil de réapprovisionnement], [Numéro de commande] FROM [dbo].[Achats] WHERE ([Unités en commande] = 0) AND [Numéro de commande] IS NULL AND [Unités en stock] < [Seuil de réapprovisionnement];
-- ---------- -- Requête 8
-- ---------- -- Requête 9
-- ---------- -- Requête 10
-- ---------- -- Requête 11
-- ---------- -- Requête 12
-- ---------- -- Requête 13
W3schools
Python.org