......
.
..
.
.
.
.
SQL
Requêtes simples
BD4 A.D., S.B.
Licence MASS, Master ISIFAR, Paris-Diderot
Février 2013
BD4 (Licence MASS, Master ISIFAR, Paris-Diderot) SQL 1/19 Février 2013 1 / 19
......
Introduction
Outline
...1Introduction
...2Requêtes mono-relation
...3Requêtes multi-relations
BD4 (Licence MASS, Master ISIFAR, Paris-Diderot) SQL 2/19 Février 2013 2 / 19
......
Introduction
SQL - Introduction
.SQL : Structured Query Language
.
.
..
.
.
.
.
Langage permettant :
interrogation des données (requêtes)
définitions des données et des contraintes structurelles sur celles-ci.
manipulation des données (insertion, suppression, mise à jour)
définition des vues et des index
administration des bases de données
.Plusieurs fois normalisés par l'ISO :
.
.
..
.
.
.
.
SQL-86,
SQL-89,
SQL-92,
SQL-99.
BD4 (Licence MASS, Master ISIFAR, Paris-Diderot) SQL 3/19 Février 2013 3 / 19
......
Introduction
Introduction
Dans ce premier cours : SQL comme Langage de manipulation de données (LMD).
Une instruction SQL permet de combiner : restriction (sélection), projection,
renommage, ...
SELECT <liste attribut >
FROM <table>
WHERE <condition >;
.correspond à :
.
.
..
.
.
.
.
π<listeattribut>(σ<condition>(<table >))
BD4 (Licence MASS, Master ISIFAR, Paris-Diderot) SQL 4/19 Février 2013 4 / 19
......
Introduction
Syntaxe - requêtes simples
SELECT [DISTINCT] * ou <liste attribut >
FROM <liste de tables >
[WHERE <condition>]
* : sélection de tous les attributs.
[...] : condition facultative.
DISTINCT : supprime les doublons.
.Base de données exemple :
.
.
..
.
.
.
.
Employe( NoEmpl , NomE , Annee , TelE , Nodept )
Fournisseur ( NomF ,VilleF , AdresseF )
Piece(NomP , Prix , Couleur)
BD4 (Licence MASS, Master ISIFAR, Paris-Diderot) SQL 5/19 Février 2013 5 / 19
......
Introduction
Syntaxe - requêtes simples
...
.
.
.
.
SELECT NomF , VilleF FROM Fournisseur;
Equivalent à : πNomF,VilleF (Fournisseur)
...
.
.
.
.
SELECT *FROM Fournisseur;
Equivalent à : Fournisseur
.
..
.
.
.
.
SELECT *
FROM Fournisseur
WHERE VilleF='Paris ';
Equivalent à : σVilleF=Paris(Fournisseur)
BD4 (Licence MASS, Master ISIFAR, Paris-Diderot) SQL 6/19 Février 2013 6 / 19
......
Requêtes mono-relation
Structure de base
...
.
.
.
.
La structure de base d'une requête s'appuie sur les trois mots clés suivants :
SELECT correspondàl’opérateurdeprojectionsurlalisted’attributs
demandée
ilpeutaussiêtresuividefonctionsd’attributs
FROM indiquelaoulesrelationsconcernées
WHERE préciseuneconditionetcorrespondàl’opérationde
restriction/sélectionenalgèbrerelationnelle.
BD4 (Licence MASS, Master ISIFAR, Paris-Diderot) SQL 7/19 Février 2013 7 / 19
......
Requêtes mono-relation
Syntaxe de la Condition
...
.
.
.
.
Une condition se construit à l'aide des opérations suivantes :
Comparaison avec opérateurs : =, <>, >,<, >=, <=
SELECT *FROM Employe
WHERE NomE <> 'Durand '
Combinaison de conditions à l'aide des opérateurs : AND, OR, NOT
SELECT DISTINCT NomF
FROM Fournisseur
WHERE (VilleF =' Londr es ')OR (VilleF='Paris ');
Attention aux priorités dans l'évaluation des expressions logiques.
BD4 (Licence MASS, Master ISIFAR, Paris-Diderot) SQL 8/19 Février 2013 8 / 19
......
Requêtes mono-relation
Syntaxe de la Condition
Test BETWEEN permettant de vérifier si la valeur d'un attribut est comprise
entre deux constantes
SELECT NomE
FROM Employe
WHERE Annee BETWEEN '22/06/03'
AND '25/09/03';
Test à NULL signifiant que la valeur est inconnue
SELECT *
FROM Employe
WHERE TelE IS NULL;
BD4 (Licence MASS, Master ISIFAR, Paris-Diderot) SQL 9/19 Février 2013 9 / 19
......
Requêtes mono-relation
Syntaxe Condition
Test d'appartenance IN qui permet de vérifier si la valeur d'un attribut
appartient à une liste de constantes,
SELECT *
FROM Fournisseur
WHERE VilleF IN ('Paris ',' Lo ndres ');
Test LIKE permettant de vérifier si un attribut de type chaîne de caractères
contient une ou plusieurs sous-chaînes ;
_ : remplace n'importe quel caractère
%: remplace n'importe quel chaîne de caractère.
SELECT VilleF
FROM Fournisseur
WHERE VilleF LIKE 'Saint %';
BD4 (Licence MASS, Master ISIFAR, Paris-Diderot) SQL 10/19 Février 2013 10 / 19
1 / 10 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !