Les Requêtes S.Q.L « Structured Query Language). SQL Historique.

Slides:



Advertisements
Présentations similaires
Bases de Données Avancées: Bases de Données Relationnelles
Advertisements

Benoît Piranda Équipe SISAR Université de Marne La Vallée Bases de données Algèbre relationnelle, opérations Requêtes SQL.
Bases de données : modèlisation et SGBD
Jeudi 24/09 Correction TP du mardi 22/09
4 relations –EMPLOYE –SERVICE –LOCALITE –ADRESSE.
Les requêtes Manière de dialoguer avec une base de donnée pour :
Programme Introduction aux BD et aux SGBD Le modèle relationnel
Les Requêtes S.Q.L « Structured Query Language)
Année universitaire Système dinformation Le SQL (Structured Query Language) langage dinterrogation dune base de données.
Les requêtes Les requêtes permettent dinterroger une base de données suivant 3 opérateurs : La projection Affiche le contenu dun champ complet En langage.
SELECT {* | Expression [Alias] [,...] } FROM Table [WHERE Condition] [ORDER BY { Expression | Alias } [ ASC | DESC ] [NULLS FIRST | NULLS LAST ] [,...]
Algèbre relationnelle et SQL
SQL Partie 3 : (LID : Langage d'interrogation de données)
EPID-CPI-ISAIP Philippe Bancquart - mise à jour 24/02/ page 1 SQL PHILIPPE BANCQUART.
1 SQL: Requêtes, Programmation et Triggers Chapitre 5, Sections
1 SQL: Requêtes, Programmation et Triggers Chapitre 5, Sections
Initiation aux bases de données et à la programmation événementielle
Introduction Le SQL (Structured  Query Language) est un langage universel de gestion des bases de données. Il a une triple fonction : LDD Langage de Définition.
Chapitre 5 : Le langage SQL
Le langage SQL LDD : Langage de Définition de Données
Optimisation de requêtes
1 G. Gardarin Optimisation de Requêtes  1. Introduction  2. Arbres relationnels  3. Restructuration algébrique  4. Modèle de coût  5. Choix du meilleur.
Sous-Interrogations.
Quinio1 Bases de données : modèlisation et SGBD Séance 3 B Quinio.
Structured Query Language 1/34. SQL Types de données Langage de Définition de Données (LDD) Langage de Manipulation de Données (LDM) Langage de Contrôle.
Initiation aux bases de données et à la programmation événementielle Cours N°2 : langage d’interrogation de données. (Les requêtes statistiques et autres).
Complément sous-requêtes
CONCEPTS BD - Synthèse journée 1 :
Base de données Magasins.accdb
Modélisation et utilisation Aurélien Marion1 Aurélien Marion
1 Les bases de données Séance 6 L ’extraction de données Le SELECT.
1- Introduction 1ère partie Le langage SQL 2- Connexion 3- Structure & Contenu 4- Requêtes.
SQL query - 1 / D. Berrabah SQL : interrogation de BD Requêtes d'interrogation simples Requêtes complexes Agrégats et groupement.
Les Bases de données Définition Architecture d’un SGBD
Cours Initiation aux Bases De Données
Initiation à la conception des systèmes d'informations
DOSSIER 07 – Interroger une base de données
Systèmes d’Information
Construire des requêtes
Environnement du développement de BD ORACLE REPORTS 10g
ملخص Initiation à la sgbdr
Intégration du P7 dans l’épreuve E41
Initiation aux bases de données et à la programmation événementielle
Université Stendhal - Grenoble
LE LANGAGE DE REQUETES SQL
Langage de manipulation de données (LMD)
9. Interrogation de la base de données
Structured Query Language
Les bases de données et le modèle relationnel
Corrigé du TP SQL 2 Énoncé -Rappel Requête 1 :
1 Présentation projet Base de Données & Langage SQL Bakary DIABY, Insa Rouen Promo. MS-ESD 16/17.
Langage d’interrogation des Données LID
SQL LID – INTERROGATIN DES DONNEES
Manipulation D’Une Base De Données
Langage d’interrogation des Données LID
Modèle entité-association Exercice client : Une petite entreprise souhaite concevoir une base de données pour la gestion des commandes de ses clients,
Proposition de réponses attendues
1 Copyright © 2004, Oracle. Tous droits réservés. Extraire des données à l'aide de l'instruction SQL SELECT.
2 Copyright © 2004, Oracle. Tous droits réservés. Restreindre et trier les données.
4 Copyright © 2004, Oracle. Tous droits réservés. Afficher des données agrégées à l'aide des fonctions de groupe.
5 Copyright © 2004, Oracle. Tous droits réservés. Afficher des données de plusieurs tables.
7 Copyright © 2004, Oracle. Tous droits réservés. Utiliser les opérateurs ensemblistes.
Algèbre relationnelle
SQL InfoBanque 16/11/2018 Halim M'SILTI.
SIO SI3 : Exploitation des données
PRESENTATION ACCESS Editeur : Microsoft Environnement Windows (SE)
Langage SQL ENCG-Tanger Le Langage SQL (1) INTRODUCTION
Systèmes d’Information et Application
Systèmes d’Information et Application
LINQ. LINQ (Language-Integrated Query) est une nouveauté du.NET Framework 3.5 C’est le nom d’un ensemble de technologies basé sur l’intégration de fonctions.
Transcription de la présentation:

Les Requêtes S.Q.L « Structured Query Language)

SQL Historique

Le cas support : Agence de Voyage

Présentation de l’écran Access pour la réalisation d’une requête S.Q.L Faire apparaître les relations pour avoir les noms des propriétés La fenêtre requête en SQL

Opérateurs de l’Algèbre Relationnelle et Arithmétiques 1) LA PROJECTION 2) LA SELECTION 3) LES CALCULS 4) LA JOINTURE

LA PROJECTION

PROJECTION On veut garder les champs Code_client, Nom_client,Prénom_client, Ville_Client uniquement SELECT SELECT [Code_client], [Nom_client], [Prénom_client], [Ville_client] FROM FROM [Clients];

R1 : Liste des Clients SELECT [Code_client], [Nom_client], [Prénom_client], [Ville_client] FROM Clients;

R2 : Liste des Voyages SELECT SELECT * FROM FROM [VOYAGES];

R3 : Liste des Agences SELECT SELECT * FROM FROM [Agences de voyage];

R4 : Liste des Clients code, nom (tri croissant), prénom, ville SELECT SELECT [Code_client], [Nom_client], [Prénom_client], [Ville_client] FROM FROM [Clients] ORDER BY ORDER BY [Nom_client];

R5 : Liste des Agences (tri sur le nom de l’agence) SELECT SELECT * FROM FROM [Agences de voyage] ORDER BY ORDER BY [Nom_agence];

R601: Liste des clients en remplaçant les intitulés des colonnes nom client en NOMS, prénom_client en PRENOMS,Adresses et Villes (tri décroissant Villes) SELECTASAS AS AS SELECT [Nom_client] AS Noms, [Prénom_client] AS Prénoms, [Adresse_rue_client] AS Adresses, [Ville_client] AS Villes FROM FROM [Clients] ORDER BYDESC ORDER BY [Ville_client] DESC ;

Opérateurs de l’Algèbre Relationnelle et Arithmétiques 1) LA PROJECTION 2) LA SELECTION 3) LES CALCULS 4) LA JOINTURE

LA SELECTION

R7 : Liste des clients de Paris (tri croissant sur le nom du client) SELECT SELECT * FROM FROM [Clients] WHERE WHERE [Ville_client]="PARIS" ORDER BY ORDER BY [Nom_client];

R8 : Liste des agences des Bouches du Rhône (tri sur le CP) SELECT SELECT [Code_agence], [Nom_agence], [Adresse_agence], [CP_agence], [Ville_agence] FROM FROM [Agences de voyage] WHERELike WHERE [CP_agence] Like "13*" ORDER BY ORDER BY [CP_agence];

R9 : Liste des Clients de Manosque OU Aix en Provence (tri sur le nom du client) SELECT SELECT * FROM FROM [Clients] WHEREOr WHERE [Ville_client]="AIX EN PROVENCE" Or [Ville_client]="MANOSQUE" ORDER BY ORDER BY [Nom_client];

R10: Afficher le nom du client N°18 avec son code postal, ainsi que le nom du client N° 50 avec son CP SELECT SELECT [Nom_client], [CP_client] FROM FROM [CLIENTS] WHEREin WHERE [Code_client] in (18,50);

R11: Liste des voyages à Paris ou Madrid en affichant le nom du voyage avec la durée et la date du voyage (tri sur la date du départ) SELECT SELECT [Nom_voyage], [Date_départ], [Durée_voyage], [Prix_voyage] FROM FROM [Voyages] WHEREOr WHERE [Nom_voyage]="PARIS" Or [Nom_voyage]="MADRID" ORDER BY ORDER BY [Date_départ];

R12: Afficher la liste des voyages (Nom voyage) sauf le voyage à destination de ZURICH (tri sur le nom du voyage) SELECT SELECT [Nom_voyage] FROM FROM [Voyages] WHERE Not WHERE Not [Nom_voyage]="ZURICH" ORDER BY ORDER BY [Nom_voyage];

R13 :Liste des clients dont le nom commence par la lettre P en changeant l’intitulé de la colonne par Noms Lettre P (trier sur Nom_client) SELECTAS SELECT [Nom_client] AS [NOMS lettre P] FROM FROM Clients WHERELIKE WHERE [Nom_client] LIKE "P*" ORDER BY ORDER BY [Nom_client];

R14: Voyages dont la durée >=15 jours (tri croissant sur la durée du voyage) SELECTAS ASAS SELECT [Num_voyage] AS [Référence du voyage], [Nom_voyage] AS [Destination du voyage], [Durée_voyage] AS [Durée des voyages jours] FROM FROM Voyages WHERE WHERE [Durée_voyage]>=15 ORDER BY ORDER BY [Durée_voyage];

R15: Liste des voyages proposés en 2004 dont la durée est >= 9 jours (tri croissant sur la propriété date_départ) SELECT SELECT [Num_voyage], [Nom_voyage], [Date_départ], [Durée_voyage] FROM FROM Voyages WHEREBetweenAnd WHERE [Date_départ] Between #1/1/2004# And #12/31/2004# AND AND [Durée_voyage]>=9 ORDER BY ORDER BY [Date_départ];

R16: Liste des voyages dont le prix est compris entre 1000€ et 2400€ (tri croissant sur la date_départ) SELECT SELECT [Nom_voyage], [Date_départ], [Durée_voyage], [Prix_voyage] FROM FROM Voyages WHEREBETWEENAND WHERE [Prix_voyage] BETWEEN 1000 AND 2400 ORDER BY ORDER BY [Date_départ];

Opérateurs de l’Algèbre Relationnelle et Arithmétiques 1) LA PROJECTION 2) LA SELECTION 3) LES CALCULS 4) LA JOINTURE

Les Calculs

R17: Prix du voyage le plus cher (afficher uniquement cette donnée) SELECTMAX()AS SELECT MAX( [Prix_voyage] ) AS [Prix du voyage le plus cher] FROM FROM Voyages;

R18: Prix du voyage le plus faible (afficher uniquement cette donnée) SELECT Min() AS SELECT Min( [Prix_voyage] ) AS [PRIX DU VOYAGE LE PLUS BAS] FROM FROM Voyages;

R19: Nombre de clients (le résultat doit être stocké sous l’intitulé Nombre de clients Net_Provence) SELECT COUNT()AS SELECT COUNT( [Code_client] ) AS [Nombre de clients Net_provence] FROM FROM Clients;

R20: Nombre de voyages SELECT COUNT()AS SELECT COUNT( [Num_voyage] ) AS [Nombre de Voyages Net_provence] FROM FROM [Voyages];

R21 : Nombre total d’Agences SELECT COUNT()AS SELECT COUNT( [Code_agence] ) AS [Nombre total Agences] FROM FROM [Agences de voyage];

R22: Prix moyen des voyages Net_Provence SELECT AVG()AS SELECT AVG( [Prix_voyage] ) AS [PRIX MOYEN DES VOYAGES NET_PROVENCE] FROM FROM [Voyages];

R23: Prix moyen des voyages en fonction de la durée des voyages SELECTAVG() AS SELECT [Durée_voyage], AVG([Prix_voyage]) AS [Prix moyen des voyages] FROM FROM [Voyages] GROUP BY GROUP BY [Durée_voyage];

Opérateurs de l’Algèbre Relationnelle et Arithmétiques 1) LA PROJECTION 2) LA SELECTION 3) LES CALCULS 4) LA JOINTURE

LA JOINTURE

R24: NB de places proposées par voyage et par agence SELECT SELECT [Nom_agence], [#num_voyage], [Nombr_de_place_proposées] FROM FROM [Agences de voyage], [Nombre de places proposées par agence] WHERE WHERE [Agences de voyage].Code_agence=[Nombre de places proposées par agence].[#code_agence];

R25: Montant dû par client SELECT SELECT [Nom_client], [Prénom_client], [Adresse_rue_client], [CP_client], [Ville_client], [N° réservation], [Date réservation], [Nom_voyage], [Date_départ], [Prix_voyage], [Nombre_places_réservées], [Tx_de_remise], ([Prix_voyage]*(1- [Tx_de_remise]))*[Nombre_places_réservées] AS [Montant dû] FROM FROM [Clients], [Réservations], [lignes réservation], [Voyages] WHEREAnd And WHERE Clients.Code_client=Réservations.[#Code client] And Réservations.[N° réservation]=[Lignes réservation].[#Num_réservation] And Voyages.Num_voyage=[Lignes réservation].[#Num_voyage];

R26: NB total de places proposées par voyage (trier sur le total) SELECTAS AS AS SELECT [Num_voyage] AS [Référence du voyage Net_provence], [Nom_voyage] AS [Nom du voyage], Sum([Nombr_de_place_proposées]) AS [places_ proposées par voyage] FROM FROM [Nombre de places proposées par agence], [Voyages] WHERE WHERE Voyages.Num_voyage=[Nombre de places proposées par agence].[#num_voyage] GROUP BY GROUP BY [Num_voyage], [Nom_voyage] ORDER BY ORDER BY Sum([Nombr_de_place_proposées]);

R27: Réservations du 01/01/2003 au 31/01/2003 SELECTAS ASAS SELECT [Nom_client] AS [Nom du Client], [Prénom_client] AS Prénom, [Date réservation] AS [Réservations de janvier] FROM FROM [Clients], [Réservations] WHERE AndAnd WHERE Clients.Code_client=Réservations.[#Code client] And [Date réservation]>=#1/1/2003# And [Date réservation]<=#1/31/2003#;

R28 :Total des places proposées par agence SELECTSUM AS SELECT [Nom_agence], SUM ([Nombr_de_place_proposées]) AS [Total places par agence] FROM FROM [Agences de voyage], [Nombre de places proposées par agence] WHERE WHERE [Agences de voyage].Code_agence=[Nombre de places proposées par agence].[#code_agence] GROUP BY GROUP BY [Nom_agence];

Académie Aix-Marseille Rénovation STG Formation S.Q.L Formateurs : Nathalie Richit Patrick Laupies Patrice Viaud Thierry Pouplier

FIN