0% ont trouvé ce document utile (0 vote)
8 vues5 pages

Introduction au langage SQL

SQL

Transféré par

ferdaousfathellah
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)
8 vues5 pages

Introduction au langage SQL

SQL

Transféré par

ferdaousfathellah
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

Chapitre II : Langage de requêtes SQL

SQL (Structured Querry Language) dans sa version 2 de 1992 est un langage structuré
regroupant un ensemble d'instructions permettant la création, la structuration et
l'interrogation des bases de données relationnelles.
SQL offre trois catégories de langages :

• Langage de Manipulation de Données (LMD) : Offre les instructions pour ajouter,


supprimer et modifier des lignes à savoir : SELECT, INSERT, UPDATE et DELETE.

• Langage de Description de Données (LDD) : Offre les instructions permettant la


création de la base de données : Base de données, Tables, Attributs, Clés primaires, Clés
étrangères, index... à savoir : CREATE, ALTER et DROP

• Langage de Contrôle de Données (LCD) : Offre les instructions permettant de définir


des permissions pour les utilisateurs pour gérer les droits d’accès, à savoir : GRANT,
REVOKE et DENY

I. Langage de Manipulation de Données (LMD) :


• Instruction SELECT :

L’affichage des données se fait à l'aide de l'instruction Select.


La syntaxe complète pour cette instruction est :

Select colonne1, colonne2,...

From table1, table2,...


Where Condition
Group By colonne_Regroupement1, Attribut_Regroupement2

Having Condition_Regroupeme
Order By Critère_Tri1 Asc| Desc, Critère_Tri2 Asc| Desc

Remarque : Pour éliminer les répétitions des lignes utilisez le mot


clé distinct

Select distinct prenom from employé

• clause where:
Pour exprimer une condition on utilise la clause WHERE.

Les conditions peuvent être exprimée à l'aide des opérateurs =, >, >= ,<, <=, Between, in,
like, is Null, exists, any, all, union, intersect, minus et peuvent être combinées à l'aide des
opérateurs logiques : and, or et not
• Between : Permet de tester l'appartenance de la valeur d'une colonne à un intervalle

Select *from Employé


Where salaireDeBase Between 5000 and 10000

Ce qui est équivalent à :


Where salaireDeBase >= 5000 and salaireDeBase <= 10000

• in : Teste si les valeurs d'une colonne appartiennent à un groupe de valeur. Le


groupe de valeurs pouvant s'exprimer à l'aide de valeurs constantes ou d'une
requête select

Select * from employé


Where grade in (‘cadre’, ’technicien’)
Ou
Select * from departement

Where localisation in (Select ville From employé)

• Like : Permet une comparaison entre une chaîne de caractères et les valeurs
d'une colonne. Elle utilise deux caractères spéciaux % et _
% : signifie plusieurs caractères

_ : signifie un seul caractère


Exemples :
• Les employés avec un nom qui commence par A

Select * from employé where nom like 'A%'

• Les employés avec un nom se compose de deux lettres et commence par A

Select * from employé where nom like 'A_'

• Les employés avec un nom se compose de trois lettres et commence par A

Select * from employé Where nom like 'A__'

• Any : Compare une colonne avec une liste de valeurs fournies par une sous
requête. Si une des valeurs de la liste rend la condition vraie alors la ligne est
sélectionnée

• All : compare une colonne avec une liste de valeurs fournies par une sous
requête. Si toutes les valeurs de la liste rendent la condition vraie alors la ligne
est sélectionnée
• Exists : Est évalué à vrai si la sous-requête qui le suit donne au moins une ligne en
retour

• Union : Permet de réaliser l'union entre deux ensembles( tables)

(Select...From...Where...)
Union

(Select...From...Where...)

• Intersect : Permet de réaliser l'intersection entre deux ensembles (tables)

• Minus : Permet de réaliser la différence entre deux ensembles (tables)

• clause Order by : permet d’exprimer des critères de tri


• clause Group by : Effectue des regroupements sur certains attributs. En général, il
est utilisé pour obtenir des statistiques et calculs en exploitant les fonctions
offertes par SQL : Sum (Somme), Min(Minimum), Max(Maximum),
Count(Nombre), Avg(Moyenne).
• Remarque : pour exprimer des conditions sur les éléments de regroupement après
group by on utilise : HAVING

• La jointure entre les tables :


La jointure consiste à associer des lignes de 2 tables en associant l’égalité des valeurs
d’une colonne d’une première table par rapport à la valeur d’une colonne d’une
deuxième table.

• Jointure interne :
La jointure interne est la fusion de 2 tables qui ont une colonne commune avec une
condition d’égalité de cette colonne.
Pour écrire une jointure interne entre deux tables Table1 et Table2 on utilise :

Select Table1. Colonne1, Table2.Colonne2


From Table1, Table2
WhereTable1.ColonneJointure1=Table2.ColonneJointure2

• Dans les nouvelles versions de SQL, la jointure s’écrit :


Select Table1. Colonne1, Table2.Colonne2
From Table1 inner join Table2
On Table1.ColonneJointure1=Table2.ColonneJointure2

Exemples :
Soient les 2 tables suivantes :
DEPARTEMENT (NumDept, nomDept, ville)
EMPLOYE (NumEmp, nomEmp, adresse, dateEmbauche, NumDept*)

• Afficher le nom et l’adresse de l’employé numéro 4.

• Afficher le numéro du département où l’employé numéro 4 travaille.

• Afficher la ville du département où l’employé numéro 4 travaille.

• Afficher les noms des employés et les noms de leurs départements où ils travaillent.

• Instructions de Mise à jour des données :

La mise à jour désigne les différentes opérations de suppression, de modification et d'insertion


des informations dans les tables.

a- Insertion d’une ligne :

La syntaxe utilisée est la suivante :

insert into Nom_Table (col1,col2, col3,….)

values (valeur1, valeur2, valeur3,…..)

On peut insérer des valeurs dans toutes les colonnes de la table en écrivant :

insert into Nom_table values (val1, val2, val3, ....)

Exemple :

insert into DEPT values (2, ‘informatique’, ‘casa’)


insert into DEPT ( Dnum, Dnom) values ( 1, ‘logistique’)
insert into EMP values ( 100, ‘eeee1’,’responsable achat’,’2000/02/15’,NULL ,2)

Un autre moyen d’insérer des lignes dans une table est d'utiliser une instruction select qui
prend des informations à partir d'autres tables pour les insérer dans une table voulue

Insert into Nom_table Select Col1, Col2,... From Nom_Table1, Nom_Table2...Where...

Exemple:

Insert into ANCIEN select * from EMP WHERE dateEmb< ‘1990/01/01’


b- Suppression de ligne :

Delete from Nom_Table [where Condition]

c- Modification de ligne:

Update Nom_Table

set colonne 1= new val, colonne2= new val, ……

[where Condition]

Exemples : Soit la table Produit (codep, libéllé, prix)

• Supprimer les produits ayant un prix qui dépasse 200

• Supprimer tous les produits de la table.

• Doubler le prix des produits qui commencent par L

• Ajouter le produit ‘pc portable’ qui a le code ‘P008’ et coute 150

• Diminuer le prix des produits qui se terminent par S de 5%.

Vous aimerez peut-être aussi