SQL

Dominique Gonzalez

Université Lille3-Charles de Gaulle

Ce document est soumis à la licence GNU FDL. Permission vous est donnée de distribuer, modifier des copies de ces pages tant que cette note apparaît clairement.

mardi 7 septembre 2010 à 10h21


Table des matières

1. Pourquoi et comment ?
Pourquoi ce document ?
Comment a-t-il été construit ?
QBullets
2. Qu'est-ce que SQL ?
Avant-propos
Intérêt de SQL
SQL dans l'architecture en couches des SGBD
SQL : Principes d'une base de données relationnelle
Architecture client-serveur et communication par SQL
Bases de données en client-serveur
Les serveurs de transactions
Structure générale du langage SQL
SQL : un langage algébrique
3. Une base jouet pour découvrir SQL
Les tables
Quelques requêtes
4. Présentation
Fonctionnalités générales
Utilisation de cette base
5. La base de données
MLD
Contenu de la base
ARTISTE
MEMBRE
DISQUE
GENRE
ETAT
CHANSON
LANGUE
LANGUEARTISTE
LANGUECHANSON
INTERPRETE
ECRIT
DROITS
AUTORISATIONS
6. La commande SELECT, syntaxe de base
SELECT
Suppression des doublons
Restriction
Restriction en comparant les colonnes entre elles
Négation, recherche approchée
Tris
Valeurs non renseignées
Expressions arithmétiques
Éviter les valeurs NULL
Arrondis
Concaténation
Opérateur conditionnel
Chaînes de caractères
Opérations ensemblistes
7. Les jointures et les sous-requêtes
Jointures
Auto-jointures
Sous-requêtes
LEFT JOIN, RIGHT JOIN
8. Les dates
Généralités
Affichage d'une date
Exercices
9. Les groupes
Utilisation de fonctions de groupe
Les groupes
La clause HAVING
Exercices
10. Exercices récapitulatifs
11. Réponses aux premiers exercices sur la base jouet
12. Réponses aux premiers exercices sur la commande SELECT
13. Réponses aux exercices sur les jointures et les sous-requêtes
14. Réponses aux exercices sur les dates
15. Réponses aux exercices sur les groupes
16. Réponses aux exercices récapitulatifs
Index

Liste des tableaux

2.1. SQL interactif
3.1. La table UN
3.2. La table DEUX
5.1.
5.2.
5.3.
5.4.
5.5.
5.6.
5.7.
5.8.
5.9.
5.10.
5.11.
5.12.
5.13.
8.1. Liste des masques au format numérique
8.2. Liste des masques au format caractère
8.3. Masque de suffixe

Liste des exemples

2.1. Contraintes d'intégrité
2.2. Projection
2.3. Sélection
2.4. Union
2.5. Différence
2.6. Jointure
2.7. Requête
8.1. Utilisation de TO_CHAR (numérique)
8.2. Utilisation de TO_CHAR (caractères)
8.3. Utilisation de TO_CHAR (suffixe)
9.1. Moyenne