0% ont trouvé ce document utile (0 vote)
142 vues49 pages

Le Langage SQL

Transféré par

Seydinaissalaye Diagne
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
142 vues49 pages

Le Langage SQL

Transféré par

Seydinaissalaye Diagne
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 49

Chapitre 3 : Le langage SQL

Le langage SQL

1
Chapitre 3 : Le langage SQL

 Qu’est ce que le MySQL et SQL?

 Langage de description des données (LDD)

 Langage de manipulation des données (LMD)

2
Chapitre 3 : Le langage SQL

Qu’est ce que MySQL?


 MySQL est un SGBD utilisé pour développer des applications logicielles Web.

 MySQL est plébiscité pour les petites et les grandes applications.

 MySQL est un système de gestion de base de données relationnelle (SGBDR).

 MySQL est rapide, fiable, flexible et facile à utiliser.

 MySQL prend en charge le SQL standard (langage de requête structuré).

 MySQL est gratuit à télécharger et à utiliser.

 MySQL a été développé par Michael Widenius et David Axmark en 1994.

 MySQL est actuellement développé, distribué et pris en charge par Oracle Corporation.

 MySQL écrit en C, C ++.


3
Chapitre 3 : Le langage SQL

Qu’est ce que le SQL ?


SQL (Structured Query Language) est un ensemble de commandes permettant :

- La description des schémas de données (création, modification, suppression de tables…)

- La manipulation des données (sélection, insertion, modification, suppression de données)

- Le contrôle de données (partage, intégrité, confidentialité, sécurité)

4
Chapitre 3 : Le langage SQL

Qu’est ce que le SQL ?

Généralement en fonction des besoins informatiques, il existe trois types d’usagers de SQL :

- Administrateur de Bases de données

- Administrateur d’applications

- Développeur d’applications

5
Chapitre 3 : Le langage SQL

Qu’est ce que le SQL ?


- SQL est un langage de mise en œuvre et de manipulation de base de données, qui est
utilisé par le biais d’un ensemble de commandes.

LDD LMD LCD


CREATE INSERT GRANT
DROP DELETE REVOKE
ALTER UPDATE CONNECT
SELECT COMMIT
ROLLBACK
SET
6
Chapitre 3 : Le langage SQL

Langage de description des données (LDD)


Soit le cas de la base de données, Gestion_Commande modéliser par :
Le modèle E – A (MCD)
Client Commande
N_clt 1,n 1,1 N_com
Nom Date
Prenom Passer Montant
Adresse Quantité
Libellé
Le modèle relationnel (MLD)
Client Commande
N_clt N_com
Nom Date
Montant
Prenom
Quantité
Adresse Libellé
#N_clt 7
Chapitre 3 : Le langage SQL

Langage de description des données (LDD)


La base de données est complétée par les dictionnaires de données suivants :
 Client
Numéro Données Type Description
Numerique (entier)
1 N_clt Numéro du client / Clé primaire
NuméroAuto
2 Nom Texte (25) Nom du client
3 Prenom Texte (50) Prénom du client
4 Adresse Texte (15) Adresse du client

 Commande
Numéro Données Type Description
Numerique (entier)
1 N_cmd Numéro du client / Clé primaire
NuméroAuto
2 Date Date Date de la commande
3 Montant Numérique (entier) Montant de la commande
4 Quantité Numerique (entier) Quantité de la commande
5 Libellé Texte (15) Libellé de la commande
8
PARTIE A : LDD
LANGAGE DE DESCRIPTION DES DONNEES

9
Chapitre 3 : Le langage SQL

Langage de description des données (LDD)


• Création de la base de données

Syntaxe Exemple
CREATE DATABASE Nom_BDD CREATE DATABASE Gestion_Commande;

• Affichage des bases de données créées

Syntaxe
SHOW DATABASES;
• Suppression de la base de données

Syntaxe Exemple
DROP DATABASE Nom_BDD DROP DATABASE Gestion_Commande;

10
Chapitre 3 : Le langage SQL

Langage de description des données (LDD)


• Création de TABLE

CREATE TABLE nom-table ( {<élément-table>}+ )

[ENGINE = <moteur-stockage>] [DEFAULT CHARSET=<encodage-caractères>];

<élément-table>:= {<définition-colonne>|<contrainte-table>}

<définition-colonne>:= nom-colonne <type> [<clause-défaut>] [<contrainte-colonne>]

<clause-défaut>:= DEFAULT valeur

11
Chapitre 3 : Le langage SQL

Langage de description des données (LDD)


• Création de TABLE
CREATE TABLE Client
( Contraintes d’intégrité
N_clt INT  Contraintes d'entité
Nom VARCHAR(25)
 Contraintes de domaine
Prenom VARCHAR(50)
Adresse VARCHAR(15)  Contraintes d'unicité

)  Contrainte de vacuité
ENGINE = InnoDB DEFAULT CHARSET= latin1;

12
Chapitre 3 : Le langage SQL

Langage de description des données (LDD)


• Gestion de la contrainte d’entité (méthode 1)
CREATE TABLE Client
( Contraintes d’intégrité
N_clt INT CONSTRAINT pk PRIMARY KEY
 Contraintes d'entité
Nom VARCHAR(25)
Prenom VARCHAR(50) Toute entité doit posséder un identificateur.

Adresse VARCHAR(15)  Contraintes de domaine


)
 Contraintes d'unicité
ENGINE = InnoDB DEFAULT CHARSET= latin1;
 Contrainte de vacuité

13
Chapitre 3 : Le langage SQL

Langage de description des données (LDD)


• Gestion de la contrainte d’entité (méthode 2)
CREATE TABLE Client
Contraintes d’intégrité
(
N_clt INT  Contraintes d'entité

Nom VARCHAR(25) Toute entité doit posséder un identificateur.


Prenom VARCHAR(50)
 Contraintes de domaine
Adresse VARCHAR(15)
CONSTRAINT pk PRIMARY KEY (N_clt)  Contraintes d'unicité

)  Contrainte de vacuité

ENGINE = InnoDB DEFAULT CHARSET= latin1;


14
Chapitre 3 : Le langage SQL

Langage de description des données (LDD)


• Gestion de la contrainte d’entité (méthode 3)
CREATE TABLE Client
Contraintes d’intégrité
(
N_clt INT PRIMARY KEY  Contraintes d'entité

Nom VARCHAR(25) Toute entité doit posséder un identificateur.


Prenom VARCHAR(50)
 Contraintes de domaine
Adresse VARCHAR(15)
 Contraintes d'unicité
)
ENGINE = InnoDB DEFAULT CHARSET= latin1;  Contrainte de vacuité

15
Chapitre 3 : Le langage SQL

Langage de description des données (LDD)


• Gestion de la contrainte d’entité (méthode 4)
CREATE TABLE Client
Contraintes d’intégrité
(
N_clt INT  Contraintes d'entité

Nom VARCHAR(25) Toute entité doit posséder un identificateur.


Prenom VARCHAR(50)
 Contraintes de domaine
Adresse VARCHAR(15)
PRIMARY KEY (N_clt)  Contraintes d'unicité

)  Contrainte de vacuité

ENGINE = InnoDB DEFAULT CHARSET= latin1;


16
Chapitre 3 : Le langage SQL

Langage de description des données (LDD)


• Gestion de la contrainte d’entité (Relation n:n)
CREATE TABLE Passer
( Contraintes d’intégrité
N_clt INT
 Contraintes d'entité
N_cmd INT
CONSTRAINT pk PRIMARY KEY (N_clt , N_cmd) Toute entité doit posséder un identificateur.

)  Contraintes de domaine
ENGINE = InnoDB DEFAULT CHARSET= latin1;
 Contraintes d'unicité

 Contrainte de vacuité

17
Chapitre 3 : Le langage SQL

Langage de description des données (LDD)


• Gestion de la contrainte de domaine
CREATE TABLE Commande
( Contraintes d’intégrité

N_com INT  Contraintes d'entité


Date DATE
 Contraintes de domaine
Montant INT
Les valeurs de certains attributs doivent être
Quantité INT CHECK (Quantité>0)
prises dans un ensemble donné.
Libellé VARCHAR(15)
 Contraintes d'unicité
)
ENGINE = InnoDB DEFAULT CHARSET= latin1;  Contrainte de vacuité

18
Chapitre 3 : Le langage SQL

Langage de description des données (LDD)


• Gestion de la contrainte d’unicité
CREATE TABLE Commande
( Contraintes d’intégrité

N_com INT  Contraintes d'entité


Date DATE
 Contraintes de domaine
Montant INT
 Contraintes d'unicité
Quantité INT CHECK (Quantité>0)
Libellé VARCHAR(15) UNIQUE Une valeur d'attribut ne peut pas être affectée
deux fois à deux entités différentes.
)
ENGINE = InnoDB DEFAULT CHARSET= latin1;  Contrainte de vacuité

19
Chapitre 3 : Le langage SQL

Langage de description des données (LDD)


• Gestion de la contrainte d’unicité
CREATE TABLE Commande
( Contraintes d’intégrité

N_com INT  Contraintes d'entité


Date DATE
 Contraintes de domaine
Montant INT NOT NULL
 Contraintes d'unicité
Quantité INT CHECK (Quantité>0)
Libellé VARCHAR(15) UNIQUE  Contrainte de vacuité

) Un attribut ne doit pas prendre une valeur vide.

ENGINE = InnoDB DEFAULT CHARSET= latin1;


20
Chapitre 3 : Le langage SQL

Langage de description des données (LDD)


• Modification de TABLE

ALTER TABLE nom-de-table <modification-de-table> ;

<modification-de-table> := {

ADD COLUMN <définition-colonne> | ADD CONSTRAINT <contrainte-table> |

DROP COLUMN <nom-colonne> | DROP CONSTRAINT <nom-contrainte> |

MODIFY {<définition-colonne> }+ }

21
Chapitre 3 : Le langage SQL

Langage de description des données (LDD)


• Modification de table
Soit la définition de notre table Commande à modifier
CREATE TABLE Commande
(
N_com INT Liste des modifications à faire :
Date DATE - Ajout d’une colonne Prix_Unitaire
Montant INT NOT NULL - Modification de la colonne Quantité

Quantité INT CHECK (Quantité>0) - Suppression de la colonne Date

Libellé VARCHAR(15) UNIQUE


)

22
Chapitre 3 : Le langage SQL

Langage de description des données (LDD)


• Modification de table
Soit la définition de notre table Commande à modifier

• Ajout d’une colonne Prix_Unitaire


ALTER TABLE Commande ADD Prix_Unitaire INT NOT NULL;
• Modification de la colonne Quantité
ALTER TABLE Commande MODIFY INT CHECK (Quantité>=5);
• Suppression de la colonne Date
ALTER TABLE Commande DROP Date

23
Chapitre 3 : Le langage SQL

Langage de description des données (LDD)


• Modification de table
Soit la définition de notre table Commande à modifier
• Renommer le nom de la table Commande en Com_Client
RENAME TABLE Commande TO Com_Client;
Avec :
 Commande : Ancien nom de la table
 Com_Client : Nouvel nom de la table

24
PARTIE B : LMD
LANGAGE DE MANIPULATION DES DONNEES

25
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• Ajout d’enregistrement

INSERT INTO <nom-table> [({nom-colonne}+)] VALUES ({<atome>}+)

<atome>:= {constante | NULL }

ou encore

INSERT INTO nom-table (nom-colonne1, ..., nom-colonneN) VALUES (valeur1,...,valeurN);

26
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• Ajout d’enregistrement

Exemple : Ajoutons quelques enregistrements sur la Table Client

INSERT INTO Client (N_Clt, Nom, Prenom, Adresse ) VALUES ('CLT001', ‘Ba', ‘Alimatou', ‘Ndiaganiaw’);

INSERT INTO Client (N_Clt, Nom, Prenom, Adresse ) VALUES ('CLT002’, ‘Thioye’, ‘Djibril’, ‘Aere Lao’);

Attention : Dans ce cas le numéro du client n’est pas auto incrémenter

Lorsque ce cas se présente, on n’a pas besoin de préciser le numéro :

INSERT INTO Client (N_Clt, Nom, Prenom, Adresse ) VALUES (‘Thiam’, ‘Rokhaya’, ‘Thies’);

INSERT INTO Client (N_Clt, Nom, Prenom, Adresse ) VALUES (‘Ngom’, ‘Ibra’, ‘Dakar’);

27
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• Mise à jour d’enregistrement
UPDATE nom-table
SET {nom-colonne={<expression>|<requête-pleine>}}+
[WHERE <condition>]
ou
UPDATE nom-table
SET <nom-colonne1>=<nouvelle-valeur1>
..............
<nom-colonneN>=<nouvelle-valeurN>
[ WHERE <condition>];
28
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• Mise à jour d’enregistrement
Exemple : Soit une table Produit, mettons à jour quelques enregistrements
Cas : On doit modifier le prix du lait qui est passé de 1000 F à 1500 F
UPDATE Produit
SET Prix = 1300
WHERE Désignation = 'Lait’;

Attention :

 Si la clause WHERE n'est pas indiquée, le champ précisé après SET sera modifié pour toutes les lignes de la table

 Chaque nom de colonne doit appartenir à la table précitée

 Un même nom de colonne ne peut pas apparaître plus d'une fois dans l'instruction SQL.

29
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• Suppression d’enregistrement

DELETE FROM nom-table

[ WHERE <condition>];

Exemple : Supprimons les produits dont la date d’expiration c’est à partir du 01/11/2018

DELETE FROM Produit WHERE Date_exp >= “01/11/2018” ;

Attention :

• En l’absence de la clause WHERE, tous les tuples de la table produit seront supprimés

DELETE FROM Produit;


30
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• Interrogation d’une base de données

SELECT [prédicat] <description de colonnes résultat>

FROM <Nom d'une ou de plusieurs tables>

[ WHERE <condition logique qui définit les tuples du résultat>]

[ GROUP BY <liste de nom-colonne>]

[ HAVING <critère>]

[ ORDER BY <critère>]

31
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• Interrogation d’une base de données 1
N_Clt Prenom Nom Adresse
1. Exemple : Liste des clients
1 Tracey Mansal Nioro
2 Aissatou Diallo Thies
SELECT * FROM Client;
3 Mariama Sow Thies

2. Exemple : L’adresse de mes clients

SELECT Adresse FROM Client; 2


Adresse
Nioro
3. Exemple : Le prénom et le nom de mes clients
3 Thies
Prenom Nom Thies
SELECT Prenom, Nom FROM Client; Tracey Mansal
Aissatou Diallo
Mariama Sow 32
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


N_Clt Prenom Nom Adresse
• Interrogation d’une base de données
1 Tracey Mansal Nioro
2 Aissatou Diallo Thies
A. Exemple : L’adresse de mes clients (Exemple précédent)
3 Mariama Sow Thies

SELECT Adresse FROM Client;


A Adresse
Nioro
B. Exemple : L’adresse de mes clients (sans DOUBLON)
Thies
Thies
SELECT DISTINCT Adresse FROM Client;
B Adresse
Nioro
Thies

33
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• La sélection conditionnelle
Syntaxe générale : Condition logique qui définit les tuples du résultat
WHERE exp1 = exp2
WHERE exp1 != exp2
WHERE exp1 < exp2
WHERE exp1 > exp2
WHERE exp1 <= exp2
WHERE exp1 >= exp2
WHERE exp1 BETWEEN exp2 AND exp3
WHERE exp1 LIKE exp2
WHERE exp1 NOT LIKE exp2
WHERE exp1 IN (exp2, exp3,...)
WHERE exp1 NOT IN (exp2, exp3,...)
WHERE exp1 IS NULL
WHERE exp1 IS NOT NULL

34
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• Interrogation d’une base de données 1 Prenom Nom Adresse
Aissatou Diallo Thies
1. Exemple : Le prénom et le nom des clients de Thies Mariama Sow Thies

SELECT Prenom, Nom FROM Client WHERE Adresse=‘Thies’;


2. Exemple : Quelles sont les commandes pour lesquelles les quantités commandées du produit
‘Carotte' sont supérieures à 15 ? N_cmd Libellé Adresse
1 Carotte 10
SELECT N_Cmd 25 Tomate 15
37 Fraise 35
FROM Commande
40 Carotte 27

WHERE Libellé=‘Carotte' AND Quantite>15;


2
N_cmd Libellé Adresse
40 Carotte 27 35
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• La sélection conditionnelle
Exemple :
- 'abc%' désigne les mots commençant par abc
- 'a_c' désigne les mots commençant par a, suivi d’un caractère et terminé par c
Exemple : La liste des clients dont le nom commence par Di

SELECT Prenom, Nom FROM Client WHERE Nom LIKE ‘Di%’;


Prenom Nom Adresse Prenom Nom Adresse
Aissatou Diallo Thies Aissatou Diallo Thies
Mansour Diouf Dakar Mansour Diouf Dakar
Aida Ndione St Louis Fatim Diop Thies
Fatim Diop Thies
36
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• Les fonction d’agrégats
Définition
C’est l’ensemble des fonctions qui permettent d'effectuer des statistiques
sur le résultat d’une requête (min, max, somme, etc)

Les fonctions de groupe calculent les résultats à partir d'une collection de valeurs et restituent une valeur :

• COUNT (*) comptage des lignes ;

• COUNT ([DISTINCT | ALL] <nom-colonne>) comptage de toutes ou des valeurs distinctes (DISTINCT)

• MAX | MIN ([DISTINCT | ALL] expr ) maximum | minimum des valeurs

• SUM | AVG ([DISTINCT | ALL] expr) somme | moyenne des valeurs

• STDDEV | VARIANCE ([DISTINCT | ALL] expr) écart-type | variance des valeurs


37
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• Les fonctions d’agrégats

A. Exemple : Le nombre total de client

SELECT COUNT(*) FROM Client ; Prenom Nom Adresse


Aissatou Diallo Thies

B. Exemple : Le nombre de client habitant Thiès Babacar Diamé Dakar


Aida Ndione St Louis

SELECT COUNT(*) FROM Client WHERE Adresse=‘Thies’ ; Fatim Diop Thies

C. Exemple : Le nombre de ville distincte abritant les clients de nom commençant par « Dia »

SELECT COUNT(DISTINCT Adresse) FROM Client WHERE Nom LIKE ‘Di%’ ;

38
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• Le tri
ORDER BY <critère>
<critère> := {nom-colonne [ASC | DESC]}+
• L'ordre par défaut est ascendant (sauf avec DESC);
• La clause ORDER BY est toujours placée en dernier dans la requête;
• Le tri se fait d'abord selon le 1ier critère, puis les lignes ayant la même valeur pour le 1ier
critère sont triées selon le 2ieme critère, etc...;
• Si un attribut sur lequel porte un critère de tri contient la valeur NULL, les lignes
correspondantes sont affichées en premier.

Exemple : Liste des clients par ordre alphabétique


SELECT Nom, Prenom FROM Client ORDER BY Nom ASC;

39
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• Le regroupement (GROUP BY)

Définition
C’est la possibilité de regrouper plusieurs lignes d'une même requête

Contenir
Num_cmd
Num_pro
40
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• Le regroupement (GROUP BY)
A. Exemple : La quantité totale commandée pour chaque produit
SELECT Num_Cmd, Libellé, SUM(Quantité) AS QuantiteTotale
FROM Contenir
GROUP BY Num_Cmd;

B. Exemple : le total des quantités commandées pour la commande C005


SELECT Num_Cmd, SUM(Quantité) AS QuantiteTotale
FROM Contenir
WHERE Num_Cmd = ‘C005’
GROUP BY Num_Cmd;

41
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• La clause HAVING

HAVING permet d’exprimer des conditions sur l’ensemble des lignes retournées lors du GROUP BY

SELECT liste-exp1

FROM nom-table

[ WHERE condition ]

GROUP BY liste-expr2

HAVING condition-sur-lignes ;

42
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• Le regroupement (GROUP BY)
A. Exemple : La quantité totale commandée pour chaque produit
SELECT Num_Cmd, Libellé, SUM(Quantité) AS QuantiteTotale
FROM Contenir
GROUP BY Num_Cmd;

• Le regroupement (GROUP BY) avec la clause HAVING


La quantité totale commandée pour chaque produit supérieure à 20
SELECT Num_Cmd, Libellé
FROM Contenir
GROUP BY Num_Cmd;
HAVING SUM(Quantité)>20;

43
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• Le différence entre WHERE et HAVING
1. WHERE - Pour chaque produit la moyenne des quantités commandées inférieures 5 :
SELECT Num_Cmd, Libellé, AVG(Quantité) AS QuantiteMoy
FROM Contenir
WHERE Quantité<5;
GROUP BY Num_Cmd;
2. HAVING - Produit dont la quantité moyenne commandée est inférieure 5 :
SELECT Num_Cmd, Libellé, AVG(Quantité) AS QuantiteMoy
FROM Contenir
GROUP BY Quantité<5;
HAVING AVG(Quantité) ;
WHERE sélectionne les lignes de la requête avant de faire le regroupement, tandis que
HAVING sélectionne les lignes de la requête après le regroupement.
44
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• La jointure
 La jointure permet d'exprimer des requêtes portant sur les données réparties dans plusieurs
tables.
 On précise la liste des tables concernées dans la clause FROM, et on exprime les critères
de rapprochement dans la clause WHERE.
 Il existe une syntaxe normalisée des jointures qui s'exprime à l'aide du mot clef JOIN dans la
clause FROM, suivant la nature de la jointure, on devra préciser sur quels critères se base la
jointure.

45
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• La jointure
Il y a plusieurs types de jointure :
• La jointure naturelle ou équi-jointure : égalité des valeurs d'une colonne d'une table à une
colonne d'une autre table
• La θ-jointure : jointure avec opérateurs de non égalité (<, <=, >, >=, !=)
• L'auto-jointure : jointure d'une table sur elle-même
• La jointure externe, c'est-à-dire exiger que le résultat comprenne toutes les lignes des tables
(ou d'au moins une des tables de la jointure), même s'il n'y a pas correspondance des lignes
entre les différentes tables mises en oeuvre dans la jointure.
• La jointure d'union consiste à ajouter toutes les données des deux tables à condition
qu'elles soient compatibles dans leurs structures.
• La jointure croisée permet de faire le produit cartésien des tables.
• La jointure hétérogène, c'est-à-dire de joindre une table d'une base de données, à une ou
plusieurs autres bases de données éventuellement même sur des serveurs différents, voire
même sur des SGBDs de différents types
46
Chapitre 3 : Le langage SQL

Langage de manipulation des données (LMD)


• La jointure
SELECT <description de colonnes résultat>
FROM R1, R2
WHERE R1.A = R2.A ;
Exemple : Donner les noms et prénoms des clients ayant commandé
SELECT Client.Nom, Client.Prenom
FROM Client, Commande
WHERE Client.N_Clt = Commande.N_Clt;

Exemple : Donner les noms et prénoms des clients ayant commandé ainsi que la date et le
montant de chaque commande.
SELECT Client.Nom, Client.Prenom, Commande.DateCmd, Commande.Montant
FROM Client, Commande
WHERE Client.N_Clt = Commande.N_Clt;

47
Chapitre 3 : Le langage SQL

En résumé CREATE

DROP
Structure des tables
LDD
ALTER

INSERT

SQL LMD
DELETE
Gestion des tables
UPDATE

SELECT

LCD
48
Chapitre 3 : Le langage SQL

• Lien utile pour approfondir les concepts sur SQL


https://www.w3schools.in/mysql/intro/#

49

Vous aimerez peut-être aussi