Bienvenue

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.


Serie d'exercices sur les requêtes sélection

Travaux dirigés 4

		##Auteur : Enseignant
		##École : Collège Marie Victorin 
		##Session : Hiver 2025
		##Titre du cours : Introduction aux bases de données
		##Titre du programme : Travaux dirigés 4
		##Version : 1.0
		##Date : 00/00/2025
		##Langage et version : SQL 
		##Moteur : SQL Server Express
	
		-- Toute la série d’exercices utilisera la base de données xtremefr.

		-- Requête 1
		-- Table : Employés
		-- Créez une requête qui affiche la liste des employés pour lesquels le « Poste occupé » est « représentant »
		-- Les colonnes à afficher sont :
		-- •	Nom
		-- •	Prénom
		-- •	Poste occupé
		-- •	Date d’embauche
		-- •	Téléphone personnel
		-- •	Poste

		-- Votre code ici
		SELECT 
			[Nom],
			[Prénom],
			[Poste occupé],
			[Date d'embauche],
			[Téléphone personnel],
			[Poste]
		FROM [dbo].[Employés]
		WHERE [Poste occupé] LIKE ('repr%')

      

		-- Requête 2
		-- Table : Employés
		-- Créez une requête qui affiche les employés dont la « date d’embauche » est comprise entre le 01-01-1998 et le 31-12-1998
		-- Les colonnes à afficher sont : 
		-- •	Nom
		-- •	Prénom
		-- •	Poste occupé
		-- •	Date d’embauche
		-- •	Téléphone personnel

		-- Votre code ici
		SELECT 
			[Nom],
			[Prénom],
			[Poste occupé],
			[Date d'embauche],
			[Téléphone personnel],
			[Poste]
		FROM [dbo].[Employés]
		WHERE [Date d'embauche] BETWEEN '1998-01-01' AND '1998-12-31'
	
      

	
		-- Requête 3
		-- Table : Employés
		-- Créez une requête qui affiche les employés dont le « Téléphone personnel » commence par 206555.
		-- Les colonnes à afficher sont : 
		-- •	Nom
		-- •	Prénom
		-- •	Poste occupé
		-- •	Téléphone personnel

		-- Votre code ici
		SELECT 
			[Nom],
			[Prénom],
			[Poste occupé],
			[Téléphone personnel]
		FROM [dbo].[Employés]
		WHERE [Téléphone personnel] LIKE '206555%'

      

		-- Requête 4
		-- Table : Employés
		-- Créez une requête qui affiche la liste des employés dont la « Date de naissance » est  supérieure au 01-01-1979 et 
		-- dont la « Date d’embauche » est supérieure à 01-01-1997.
		-- Les colonnes à afficher sont : 
		-- •	Nom
		-- •	Prénom
		-- •	Poste occupé
		-- •	Date d’embauche
		-- •	Date naissance

		-- Votre code ici
		SELECT 
			[Nom],
			[Prénom],
			[Poste occupé],
			[Date de naissance],
			[Date d'embauche]
		FROM [dbo].[Employés]
		WHERE [Date de naissance] > '1979-01-01' AND [Date d'embauche] > '1997-01-01'

      

		-- Requête 5
		-- Table : Employés
		-- Créez une requête qui affiche la liste des employés dont le « Poste occupé » est « directeur commercial » et 
		-- dont la « date d’embauche » est comprise entre 01-01-1998 et 31-12-1998.
		-- Les colonnes à afficher sont : 
		-- •	Nom
		-- •	Prénom
		-- •	Poste occupé
		-- •	Date d’embauche

		-- Votre code ici
		SELECT 
			[Nom],
			[Prénom],
			[Poste occupé],
			[Date d'embauche]
		FROM [dbo].[Employés]
		WHERE [Poste occupé] LIKE 'directeur comm%' AND [Date d'embauche] BETWEEN '1998-01-01' AND '1998-12-31'

      

		-- Requête 6
		-- Table : Employés
		-- Créez une requête qui affiche la liste des employés dont la personne à contacter en cas d’urgence est l’épouse. 
		-- Les colonnes à afficher sont : 
		-- •	Nom
		-- •	Prénom
		-- •	Poste occupé
		-- •	En cas d'urgence - Lien de parenté

		-- Votre code ici
		SELECT 
			[Nom],
			[Prénom],
			[Poste occupé],
			[Date d'embauche],
			[En cas d'urgence - Lien de parenté]
			FROM [dbo].[Employés]
		WHERE [En cas d'urgence - Lien de parenté] = 'epouse'
		-- WHERE [En cas d'urgence - Lien de parenté] LIKE '%pouse'

      

		-- Requête 7
		-- Table : Clients
		-- Créer une requête qui affiche la liste des clients dont le « Poste occupé » du contact est dans les ventes.
		-- Les colonnes à afficher sont :
		-- •	Nom du client
		-- •	Nom du contact
		-- •	Prénom du contact
		-- •	Poste occupé

		-- Votre code ici
		SELECT 
			[Nom du client],
			[Nom du contact],
			[Prénom du contact],
			[Poste occupé]
		FROM [dbo].[Clients]
		WHERE [Poste occupé] LIKE '%vente%'

      

		-- Requête 8
		-- Table : Clients
		-- Créez une requête qui affiche la liste des clients dont le « Pays » est « France », « Italie » et « Canada »
		-- Les colonnes à afficher sont :
		-- •	Nom du client
		-- •	Nom du contact
		-- •	Prénom du contact
		-- •	Pays

		-- Votre code ici
		SELECT 
			[Nom du client],
			[Nom du contact],
			[Prénom du contact],
			[Pays]
		FROM [dbo].[Clients]
		WHERE [Pays] IN ('france','italie','canada')
		ORDER BY [Pays]

      

		-- Requête 9
		-- Table : Clients
		-- Créez une requête qui affiche la liste des clients dont le « Pays » est « France » et la « Région » est « Nord Pas de Calais » ou 
		-- « Pays » est « Etats-Unis » et « Ville » est « Kingston »
		-- Les colonnes à afficher sont :
		-- •	Nom du client
		-- •	Nom du contact
		-- •	Prénom du contact
		-- •	Pays
		-- •	Région
		-- •	Ville

		-- Votre code ici
		SELECT 
			[Nom du client],
			[Nom du contact],
			[Prénom du contact],
			[Pays],
			[Région],
			[Ville]
		FROM [dbo].[Clients]
		-- WHERE [Pays] = 'france' AND [Région] LIKE '%calais%' OR [Pays] LIKE '%tat%rique' AND Ville = 'kingston'
		WHERE [Pays] = 'france' AND [Région] LIKE '%calais%' OR [Pays] = 'etats-unis d''amérique' AND Ville = 'kingston'
		ORDER BY [Pays]

      

		-- Requête 10
		-- Table : Clients
		-- Créez une requête qui affiche la liste des clients dont on ne connaît pas le « Code postal ». 
		-- Les colonnes à afficher sont :
		-- •	Nom du client
		-- •	Nom du contact
		-- •	Prénom du contact
		-- •	Pays
		-- •	Code postal

		-- Votre code ici
		SELECT 
			[Nom du client],
			[Nom du contact],
			[Prénom du contact],
			[Pays],
			[Code postal]
		FROM [dbo].[Clients]
		WHERE [Code postal] IS NULL

      

		-- Requête 11
		-- Table : Clients
		-- Créez une requête qui affiche la liste des clients de France, Allemagne, du Italie et 
		-- dont les « ventes de l’année dernière » sont comprises entre 10 000 et 60 000
		-- Les colonnes à afficher sont :
		-- •	Nom du client
		-- •	Nom du contact
		-- •	Prénom du contact
		-- •	Pays
		-- •	Code postal

		-- Votre code ici
		SELECT 
			[Nom du client],
			[Nom du contact],
			[Prénom du contact],
			[Pays],
			[Code postal],
			[Ventes de l'année dernière]
		FROM [dbo].[Clients]
		WHERE [Pays] IN ('france','allemagne','italie') AND [Ventes de l'année dernière] BETWEEN 10000 AND 60000
		ORDER BY [Ventes de l'année dernière]

      

		-- Requête 12
		-- Table : Détails des commandes
		-- Créez une requête qui affiche la liste des commandes des clients 1002, 1012 et 1831.
		-- Trier la liste par numéro de commande.
		-- Les colonnes à afficher sont :
		-- •	ID Commande
		-- •	ID produit
		-- •	Prix unitaire
		-- •	Quantité

		-- Votre code ici
		SELECT
			[ID commande],
			[ID produit],
			[Prix unitaire],
			[Quantité]
		FROM [dbo].[Détails des commandes]
		WHERE [ID commande] IN (1002,1012,1831)

      

		-- Requête 13
		-- Table : Détails des commandes
		-- Créez une requête qui affiche le Prix total de chaque ligne de commande de chaque commande. 
		-- Le Prix total est un champ virtuel qui n’existe pas dans la table.
		-- Les colonnes à afficher sont :
		-- •	ID Commande
		-- •	Prix unitaire
		-- •	Quantité
		-- •	Prix Total

		-- Votre code ici
		SELECT
			[ID commande],
			[Prix unitaire],
			[Quantité],
			[Prix unitaire] * [Quantité] PrixTotal
		FROM [dbo].[Détails des commandes]
		WHERE [ID commande] IN (1002,1012,1831)
      


		  
	  

W3schools

Python.org