Title: DOSSIER 11
1DOSSIER 11 Interroger une base de données
2DOSSIER 11
3Problématique
- La base de données Facturation contient tout un
ensemble dinformations concernant la
facturation de la SAFPB (société anonyme de
fabrication de produits de boulangerie). - Nous allons apprendre à la faire parler , à
exploiter cette mine dinformations pour mieux
connaître sa clientèle et ainsi améliorer sans
cesse sa politique commerciale. - Nous allons voir pourquoi le lourd travail de
structuration mené précédemment va maintenant
porter ses fruits.
4DOSSIER 11
- Activité 1 Une vue densemble de la base de
données Facturation
5Une vue densemble de la base de données
Facturation
Voici comment se présente, sous Access (logiciel
de gestion de base de données relationnels), le
schéma relationnel de la base de données étudiée
au préalable.
Modèle Relationnel des Données Table 1 PRODUITS
(Reference du produit, Designation du produit,
Prix unitaire du produit) Clé primaire
Reference du produit Clé étrangère Table 2
LIGNE_FACTURES (Reference du produit, N_facture,
Quantite) Clé primaire Reference du produit,
N_facture Clé étrangère Reference du produit
en référence à Reference du produit de
PRODUITS N_facture en référence à N_facture
de FACTURES Table 3 FACTURES (N_facture, Date
de la facture, Payée, Code de la categorie, N
client dans la categorie) Clé primaire N_factur
e Clé étrangère Code de la categorie N
client dans la categorie en référence à Code de
la categorie N client dans la categorie de
CLIENTS Table 4 CLIENTS (Code de la categorie,
N_client dans la categorie, Nom de lentreprise,
Adresse, Adresse Suite, Code postal, Montant
des achats, Suivi par le représentant n,
Téléphone, E-mail) Clé primaire Code de la
categorie N client dans la categorie Clé
étrangère Code postal en référence à Code
postal de VILLES Table 5 VILLES (Code postal,
Nom de la ville) Clé primaire Code postal Clé
étrangère
6Une vue densemble de la base de données
Facturation
Modèle Relationnel des Données Table 1 PRODUITS
(Reference du produit, Designation du produit,
Prix unitaire du produit) Clé primaire
Reference du produit Clé étrangère Table 2
LIGNE_FACTURES (Reference du produit, N_facture,
Quantite) Clé primaire Reference du produit,
N_facture Clé étrangère Reference du produit
en référence à Reference du produit de
PRODUITS N_facture en référence à N_facture
de FACTURES Table 3 FACTURES (N_facture, Date
de la facture, Payée, Code de la categorie, N
client dans la categorie) Clé primaire N_factur
e Clé étrangère Code de la categorie N
client dans la categorie en référence à Code de
la categorie N client dans la categorie de
CLIENTS Table 4 CLIENTS (Code de la categorie,
N_client dans la categorie, Nom de lentreprise,
Adresse, Adresse Suite, Code postal, Montant
des achats, Suivi par le représentant n,
Téléphone, E-mail) Clé primaire Code de la
categorie N client dans la categorie Clé
étrangère Code postal en référence à Code
postal de VILLES Table 5 VILLES (Code postal,
Nom de la ville) Clé primaire Code postal Clé
étrangère
01. Que représente chaque table ?
- Chaque table représente la structure dune table,
on peut distinguer les différents attributs
(champs) contenus dans chaque catégorie
dinformation.
- Avec le logiciel Access, chaque fenêtre
représente le schéma (la structure) dune table.
7Une vue densemble de la base de données
Facturation
Modèle Relationnel des Données Table 1 PRODUITS
(Reference du produit, Designation du produit,
Prix unitaire du produit) Clé primaire
Reference du produit Clé étrangère Table 2
LIGNE_FACTURES (Reference du produit, N_facture,
Quantite) Clé primaire Reference du produit,
N_facture Clé étrangère Reference du produit
en référence à Reference du produit de
PRODUITS N_facture en référence à N_facture
de FACTURES Table 3 FACTURES (N_facture, Date
de la facture, Payée, Code de la categorie, N
client dans la categorie) Clé primaire N_factur
e Clé étrangère Code de la categorie N
client dans la categorie en référence à Code de
la categorie N client dans la categorie de
CLIENTS Table 4 CLIENTS (Code de la categorie,
N_client dans la categorie, Nom de lentreprise,
Adresse, Adresse Suite, Code postal, Montant
des achats, Suivi par le représentant n,
Téléphone, E-mail) Clé primaire Code de la
categorie N client dans la categorie Clé
étrangère Code postal en référence à Code
postal de VILLES Table 5 VILLES (Code postal,
Nom de la ville) Clé primaire Code postal Clé
étrangère
02. Que représentent les clés primaires ?
- Ils représentent la donnée qui permet
didentifier un individu par rapport à un autre
(parfois la clé primaire peut être composée de
plusieurs attributs).
- Avec le logiciel Access, chaque clé primaire est
affichée en gras (la clé primaire peut être
formée de deux champs (ou davantage). Chacun
deux est représenté en gras mais, par
définition, il ny a quune clé primaire).
8Une vue densemble de la base de données
Facturation
Modèle Relationnel des Données Table 1 PRODUITS
(Reference du produit, Designation du produit,
Prix unitaire du produit) Clé primaire
Reference du produit Clé étrangère Table 2
LIGNE_FACTURES (Reference du produit, N_facture,
Quantite) Clé primaire Reference du produit,
N_facture Clé étrangère Reference du produit
en référence à Reference du produit de
PRODUITS N_facture en référence à N_facture
de FACTURES Table 3 FACTURES (N_facture, Date
de la facture, Payée, Code de la categorie, N
client dans la categorie) Clé primaire N_factur
e Clé étrangère Code de la categorie N
client dans la categorie en référence à Code de
la categorie N client dans la categorie de
CLIENTS Table 4 CLIENTS (Code de la categorie,
N_client dans la categorie, Nom de lentreprise,
Adresse, Adresse Suite, Code postal, Montant
des achats, Suivi par le représentant n,
Téléphone, E-mail) Clé primaire Code de la
categorie N client dans la categorie Clé
étrangère Code postal en référence à Code
postal de VILLES Table 5 VILLES (Code postal,
Nom de la ville) Clé primaire Code postal Clé
étrangère
03. Donnez la signification de la clé étrangère.
- Chaque clé étrangère montre le lien entre les
tables. - Son origine est une clé étrangère et son
extrémité est la clé primaire quelle doit
référencer.
- Les liens entre les tables symbolisent les liens
entre les diverses tables qui partent dune clé
étrangère pour pointer sur une clé primaire.
9Une vue densemble de la base de données
Facturation
Modèle Relationnel des Données Table 1 PRODUITS
(Reference du produit, Designation du produit,
Prix unitaire du produit) Clé primaire
Reference du produit Clé étrangère Table 2
LIGNE_FACTURES (Reference du produit, N_facture,
Quantite) Clé primaire Reference du produit,
N_facture Clé étrangère Reference du produit
en référence à Reference du produit de
PRODUITS N_facture en référence à N_facture
de FACTURES Table 3 FACTURES (N_facture, Date
de la facture, Payée, Code de la categorie, N
client dans la categorie) Clé primaire N_factur
e Clé étrangère Code de la categorie N
client dans la categorie en référence à Code de
la categorie N client dans la categorie de
CLIENTS Table 4 CLIENTS (Code de la categorie,
N_client dans la categorie, Nom de lentreprise,
Adresse, Adresse Suite, Code postal, Montant
des achats, Suivi par le représentant n,
Téléphone, E-mail) Clé primaire Code de la
categorie N client dans la categorie Clé
étrangère Code postal en référence à Code
postal de VILLES Table 5 VILLES (Code postal,
Nom de la ville) Clé primaire Code postal Clé
étrangère
04. Comment interprétez-vous le chiffre 1 et le
symbole mathématique de linfini 8, qui signifie
plusieurs .
- Sous Access, le symbole 8 est du côté de la clé
étrangère et le chiffre 1 (singulier) du côté de
la clé primaire.
10Une vue densemble de la base de données
Facturation
Modèle Relationnel des Données Table 1 PRODUITS
(Reference du produit, Designation du produit,
Prix unitaire du produit) Clé primaire
Reference du produit Clé étrangère Table 2
LIGNE_FACTURES (Reference du produit, N_facture,
Quantite) Clé primaire Reference du produit,
N_facture Clé étrangère Reference du produit
en référence à Reference du produit de
PRODUITS N_facture en référence à N_facture
de FACTURES Table 3 FACTURES (N_facture, Date
de la facture, Payée, Code de la categorie, N
client dans la categorie) Clé primaire N_factur
e Clé étrangère Code de la categorie N
client dans la categorie en référence à Code de
la categorie N client dans la categorie de
CLIENTS Table 4 CLIENTS (Code de la categorie,
N_client dans la categorie, Nom de lentreprise,
Adresse, Adresse Suite, Code postal, Montant
des achats, Suivi par le représentant n,
Téléphone, E-mail) Clé primaire Code de la
categorie N client dans la categorie Clé
étrangère Code postal en référence à Code
postal de VILLES Table 5 VILLES (Code postal,
Nom de la ville) Clé primaire Code postal Clé
étrangère
05. Pourquoi la fenêtre qui contient le schéma de
la base de données sappelle Relations .
- Sous Access, le schéma sappelle Relations
parce que son principal intérêt est de montrer
les liens, les relations entre les tables.
11Une vue densemble de la base de données
Facturation
Modèle Relationnel des Données Table 1 PRODUITS
(Reference du produit, Designation du produit,
Prix unitaire du produit) Clé primaire
Reference du produit Clé étrangère Table 2
LIGNE_FACTURES (Reference du produit, N_facture,
Quantite) Clé primaire Reference du produit,
N_facture Clé étrangère Reference du produit
en référence à Reference du produit de
PRODUITS N_facture en référence à N_facture
de FACTURES Table 3 FACTURES (N_facture, Date
de la facture, Payée, Code de la categorie, N
client dans la categorie) Clé primaire N_factur
e Clé étrangère Code de la categorie N
client dans la categorie en référence à Code de
la categorie N client dans la categorie de
CLIENTS Table 4 CLIENTS (Code de la categorie,
N_client dans la categorie, Nom de lentreprise,
Adresse, Adresse Suite, Code postal, Montant
des achats, Suivi par le représentant n,
Téléphone, E-mail) Clé primaire Code de la
categorie N client dans la categorie Clé
étrangère Code postal en référence à Code
postal de VILLES Table 5 VILLES (Code postal,
Nom de la ville) Clé primaire Code postal Clé
étrangère
06. Chacun des quatre traitements ci-après évoque
une opération sur la table CLIENTS.
Pourriez-vous lui donner un nom ?
- Affichage de la liste des clients
Lecture ou Consultation ou Interrogation
12Une vue densemble de la base de données
Facturation
Modèle Relationnel des Données Table 1 PRODUITS
(Reference du produit, Designation du produit,
Prix unitaire du produit) Clé primaire
Reference du produit Clé étrangère Table 2
LIGNE_FACTURES (Reference du produit, N_facture,
Quantite) Clé primaire Reference du produit,
N_facture Clé étrangère Reference du produit
en référence à Reference du produit de
PRODUITS N_facture en référence à N_facture
de FACTURES Table 3 FACTURES (N_facture, Date
de la facture, Payée, Code de la categorie, N
client dans la categorie) Clé primaire N_factur
e Clé étrangère Code de la categorie N
client dans la categorie en référence à Code de
la categorie N client dans la categorie de
CLIENTS Table 4 CLIENTS (Code de la categorie,
N_client dans la categorie, Nom de lentreprise,
Adresse, Adresse Suite, Code postal, Montant
des achats, Suivi par le représentant n,
Téléphone, E-mail) Clé primaire Code de la
categorie N client dans la categorie Clé
étrangère Code postal en référence à Code
postal de VILLES Table 5 VILLES (Code postal,
Nom de la ville) Clé primaire Code postal Clé
étrangère
06. Chacun des quatre traitements ci-après évoque
une opération sur la table CLIENTS.
Pourriez-vous lui donner un nom ?
Écriture ou Enregistrement
- Enregistrement dun client
13Une vue densemble de la base de données
Facturation
Modèle Relationnel des Données Table 1 PRODUITS
(Reference du produit, Designation du produit,
Prix unitaire du produit) Clé primaire
Reference du produit Clé étrangère Table 2
LIGNE_FACTURES (Reference du produit, N_facture,
Quantite) Clé primaire Reference du produit,
N_facture Clé étrangère Reference du produit
en référence à Reference du produit de
PRODUITS N_facture en référence à N_facture
de FACTURES Table 3 FACTURES (N_facture, Date
de la facture, Payée, Code de la categorie, N
client dans la categorie) Clé primaire N_factur
e Clé étrangère Code de la categorie N
client dans la categorie en référence à Code de
la categorie N client dans la categorie de
CLIENTS Table 4 CLIENTS (Code de la categorie,
N_client dans la categorie, Nom de lentreprise,
Adresse, Adresse Suite, Code postal, Montant
des achats, Suivi par le représentant n,
Téléphone, E-mail) Clé primaire Code de la
categorie N client dans la categorie Clé
étrangère Code postal en référence à Code
postal de VILLES Table 5 VILLES (Code postal,
Nom de la ville) Clé primaire Code postal Clé
étrangère
06. Chacun des quatre traitements ci-après évoque
une opération sur la table CLIENTS.
Pourriez-vous lui donner un nom ?
Modification
- Modification de ladresse dun client
14Une vue densemble de la base de données
Facturation
Modèle Relationnel des Données Table 1 PRODUITS
(Reference du produit, Designation du produit,
Prix unitaire du produit) Clé primaire
Reference du produit Clé étrangère Table 2
LIGNE_FACTURES (Reference du produit, N_facture,
Quantite) Clé primaire Reference du produit,
N_facture Clé étrangère Reference du produit
en référence à Reference du produit de
PRODUITS N_facture en référence à N_facture
de FACTURES Table 3 FACTURES (N_facture, Date
de la facture, Payée, Code de la categorie, N
client dans la categorie) Clé primaire N_factur
e Clé étrangère Code de la categorie N
client dans la categorie en référence à Code de
la categorie N client dans la categorie de
CLIENTS Table 4 CLIENTS (Code de la categorie,
N_client dans la categorie, Nom de lentreprise,
Adresse, Adresse Suite, Code postal, Montant
des achats, Suivi par le représentant n,
Téléphone, E-mail) Clé primaire Code de la
categorie N client dans la categorie Clé
étrangère Code postal en référence à Code
postal de VILLES Table 5 VILLES (Code postal,
Nom de la ville) Clé primaire Code postal Clé
étrangère
06. Chacun des quatre traitements ci-après évoque
une opération sur la table CLIENTS.
Pourriez-vous lui donner un nom ?
Suppression
15DOSSIER 11
- Activité 2 Quelques opérations sur la base de
données Facturation
16Quelques opérations sur la base de données
Facturation
Code de la catégorie N client dans la catégorie Nom de lentreprise Adresse Adresse suite Code postal Suivi par le représentant n Montant des achats
BOU 001 Anis Miel 7 chemin de Cassis 13010 R2 3 584,00
BOU 002 Les moulins de Pvce 74 bd R. Rolland 13010 R4 2 458,00
EPI 001 Bataille 17 rue des Trois Rois 13006 R2 18 245,00
HYP 001 Auchan 485 bd des Bartavelles ZI Les Paluds 13400 R1 105 147,00
HYP 002 Casino 47 route de Cuques La Valentine 13011 R1 250 475,00
HYP 003 Leclerc 5 route de Cabriès Plan de campagne 13480 R4 85 560,00
PAT 001 Les Moulins de Pvce 45 av. M. Pagnol 13400 R3 5 780,00
SUP 001 Intermarché 30 rue Pierre 13456 R1 1 854,00
SUP 002 Casino 145 bd P. Claudel 13010 R4 15 784,00
Cette opération ne concerne que les colonnes. On
affiche les trois premières colonnes et la
dernière.
7. Par rapport à la table CLIENTS, cette
opération concerne-t-elle les lignes ou les
colonnes ?
Code postal Nom de la ville
13010 Marseille
13011 Marseille
13400 Aubagne
Code de la catégorie N client dans la catégorie Nom de lentreprise Montant des achats
BOU 001 Anis et Miel 3 584,00
BOU 002 Les Moulins de Pvce 2 458,00
EPI 001 Bataille 18 245,00
HYP 001 Auchan 105 147,00
HYP 002 Casino 250 475,00
HYP 003 Leclerc 85 560,00
PAT 001 Les Moulins de Pvce 5 780,00
SUP 001 Intermarché 1 854,00
SUP 002 Casino 15 784,00
Voici, sous la forme dune table, la liste des
clients avec leur numéro (Code de la catégorie
et N client dans la catégorie), le nom de
lentreprise et le montant de leurs achats
(obtenu par le biais dune requête).
17Quelques opérations sur la base de données
Facturation
Code de la catégorie N client dans la catégorie Nom de lentreprise Montant des achats
BOU 001 Anis et Miel 3 584,00
BOU 002 Les Moulins de Pvce 2 458,00
EPI 001 Bataille 18 245,00
HYP 001 Auchan 105 147,00
HYP 002 Casino 250 475,00
HYP 003 Leclerc 85 560,00
PAT 001 Les Moulins de Pvce 5 780,00
SUP 001 Intermarché 1 854,00
SUP 002 Casino 15 784,00
8. Par rapport à la requête obtenue précédemment,
quelle modification a été apportée ci-dessous ?
Code de la catégorie N client dans la catégorie Nom de lentreprise Montant des achats
BOU 001 Anis et Miel 3 584,00
HYP 001 Auchan 105 147,00
EPI 001 Bataille 18 245,00
HYP 002 Casino 250 475,00
SUP 002 Casino 15 784,00
SUP 001 Intermarché 1 854,00
HYP 003 Leclerc 85 560,00
BOU 002 Les Moulins de Pvce 2 458,00
PAT 001 Les Moulins de Pvce 5 780,00
La colonne Nom de lentreprise a été classée dans
lordre croissant (alphabétique).
18Quelques opérations sur la base de données
Facturation
Code de la catégorie N client dans la catégorie Nom de lentreprise Adresse Adresse suite Code postal Suivi par le représentant n Montant des achats
BOU 001 Anis Miel 7 chemin de Cassis 13010 R2 3 584,00
BOU 002 Les moulins de Pvce 74 bd R. Rolland 13010 R4 2 458,00
EPI 001 Bataille 17 rue des Trois Rois 13006 R2 18 245,00
HYP 001 Auchan 485 bd des Bartavelles ZI Les Paluds 13400 R1 105 147,00
HYP 002 Casino 47 route de Cuques La Valentine 13011 R1 250 475,00
HYP 003 Leclerc 5 route de Cabriès Plan de campagne 13480 R4 85 560,00
PAT 001 Les Moulins de Pvce 45 av. M. Pagnol 13400 R3 5 780,00
SUP 001 Intermarché 30 rue Pierre 13456 R1 1 854,00
SUP 002 Casino 145 bd P. Claudel 13010 R4 15 784,00
Code postal Nom de la ville
13010 Marseille Centre
13011 Marseille Est
13400 Aubagne
Code de la catégorie N client dans la catégorie Nom de lentreprise Montant des achats Nom de la ville
BOU 001 Anis et Miel 3 584,00 Marseille Centre
SUP 002 Casino 15 784,00 Marseille Centre
PAT 001 Les Moulins de Pvce 5 780,00 Marseille Centre
Voici, sous la forme dune table, une deuxième
requête.
9. Pourquoi tous les clients ne sont-ils pas
présents ?
Lopération naffiche que les clients qui
résident sur Marseille Centre.
19Quelques opérations sur la base de données
Facturation
Code de la catégorie N client dans la catégorie Nom de lentreprise Adresse Adresse suite Code postal Suivi par le représentant n Montant des achats
BOU 001 Anis Miel 7 chemin de Cassis 13010 R2 3 584,00
BOU 002 Les moulins de Pvce 74 bd R. Rolland 13010 R4 2 458,00
EPI 001 Bataille 17 rue des Trois Rois 13006 R2 18 245,00
HYP 001 Auchan 485 bd des Bartavelles ZI Les Paluds 13400 R1 105 147,00
HYP 002 Casino 47 route de Cuques La Valentine 13011 R1 250 475,00
HYP 003 Leclerc 5 route de Cabriès Plan de campagne 13480 R4 85 560,00
PAT 001 Les Moulins de Pvce 45 av. M. Pagnol 13400 R3 5 780,00
SUP 001 Intermarché 30 rue Pierre 13456 R1 1 854,00
SUP 002 Casino 145 bd P. Claudel 13010 R4 15 784,00
Code postal Nom de la ville
13010 Marseille Centre
13011 Marseille Est
13400 Aubagne
Code de la catégorie N client dans la catégorie Nom de lentreprise Montant des achats Nom de la ville
BOU 001 Anis et Miel 3 584,00 Marseille Centre
SUP 002 Casino 15 784,00 Marseille Centre
PAT 001 Les Moulins de Pvce 5 780,00 Marseille Centre
Voici, sous la forme dune table, une deuxième
requête.
10. Quelle est donc cette nouvelle opération ? En
quoi consiste-t-elle ?
Cette nouvelle opération sattache principalement
aux lignes (aux enregistrements) à afficher en
fonction dun critère, ici la ville, dont une
valeur est donnée.
20Quelques opérations sur la base de données
Facturation
Code de la catégorie N client dans la catégorie Nom de lentreprise Adresse Adresse suite Code postal Suivi par le représentant n Montant des achats
BOU 001 Anis Miel 7 chemin de Cassis 13010 R2 3 584,00
BOU 002 Les moulins de Pvce 74 bd R. Rolland 13010 R4 2 458,00
EPI 001 Bataille 17 rue des Trois Rois 13006 R2 18 245,00
HYP 001 Auchan 485 bd des Bartavelles ZI Les Paluds 13400 R1 105 147,00
HYP 002 Casino 47 route de Cuques La Valentine 13011 R1 250 475,00
HYP 003 Leclerc 5 route de Cabriès Plan de campagne 13480 R4 85 560,00
PAT 001 Les Moulins de Pvce 45 av. M. Pagnol 13400 R3 5 780,00
SUP 001 Intermarché 30 rue Pierre 13456 R1 1 854,00
SUP 002 Casino 145 bd P. Claudel 13010 R4 15 784,00
Code postal Nom de la ville
13010 Marseille Centre
13011 Marseille Est
13400 Aubagne
Code de la catégorie N client dans la catégorie Nom de lentreprise Montant des achats Nom de la ville
BOU 001 Anis et Miel 3 584,00 Marseille Centre
SUP 002 Casino 15 784,00 Marseille Centre
PAT 001 Les Moulins de Pvce 5 780,00 Marseille Centre
Voici, sous la forme dune table, une deuxième
requête.
11. Quelles tables ont été consultées pour
obtenir cette requête ?
On doit consulter les tables CLIENTS et
VILLES, puisque le Nom de la ville est dans
VILLES et toutes les autres informations dans
CLIENTS.
21Quelques opérations sur la base de données
Facturation
Code de la catégorie N client dans la catégorie Nom de lentreprise Adresse Adresse suite Code postal Suivi par le représentant n Montant des achats
BOU 001 Anis Miel 7 chemin de Cassis 13010 R2 3 584,00
BOU 002 Les moulins de Pvce 74 bd R. Rolland 13010 R4 2 458,00
EPI 001 Bataille 17 rue des Trois Rois 13006 R2 18 245,00
HYP 001 Auchan 485 bd des Bartavelles ZI Les Paluds 13400 R1 105 147,00
HYP 002 Casino 47 route de Cuques La Valentine 13011 R1 250 475,00
HYP 003 Leclerc 5 route de Cabriès Plan de campagne 13480 R4 85 560,00
PAT 001 Les Moulins de Pvce 45 av. M. Pagnol 13400 R3 5 780,00
SUP 001 Intermarché 30 rue Pierre 13456 R1 1 854,00
SUP 002 Casino 145 bd P. Claudel 13010 R4 15 784,00
Code postal Nom de la ville
13010 Marseille Centre
13011 Marseille Est
13400 Aubagne
Code de la catégorie N client dans la catégorie Nom de lentreprise Montant des achats Code postal
BOU 001 Anis et Miel 3 584,00 13010
SUP 002 Casino 15 784,00 13010
PAT 001 Les Moulins de Pvce 5 780,00 13010
Voici, sous la forme dune table, une deuxième
requête.
12. Comment faites-vous le lien (la relation)
entre elles ?
Le lien se fait grâce à la clé étrangère Code
postal, qui, dans CLIENTS, référence le Code
postal de la table VILLES et permet ainsi de
trouver son nom.
22DOSSIER 11
- Activité 3 Parlons un peu SQL
23Parlons un peu SQL
- Sur la norme du langage SQL, on vous communique
les informations suivantes - Select traduit la projection et indique, à sa
suite, les champs qui doivent être affichés - From indique à quelle table appartiennent les
champs - Les champs sont séparés par une virgule
- Pour éviter toute erreur lors de lexécution de
la requête par le SGBDR, lorsque le nom dun
champ comprend des espaces, on doit lencadrer
par des crochets.
Requête SQL SELECT CLIENTS.Code de la
catégorie, CLIENTS.N client dans la
catégorie, CLIENTS.Nom de
lentreprise, CLIENTS.Montant des achats FROM
CLIENTS
Voici, la même requête exprimée par le biais du
logiciel ACCESS.
24Parlons un peu SQL
Requête SQL SELECT CLIENTS.Code de la
catégorie, CLIENTS.N client dans la
catégorie, CLIENTS.Nom de
lentreprise, CLIENTS.Montant des achats FROM
CLIENTS
13. Que fait cette requête ?
Cette requête permet dafficher la liste des
clients, en projetant (sélectionnant) certains
champs de la table (Code de la catégorie, N
client dans la catégorie, Nom de lentreprise et
Montant des achats).
Voici, le résultat de la requête exprimée par
le biais du logiciel ACCESS.
25Parlons un peu SQL
Requête SQL SELECT DISTINCT CLIENTS.Code de la
catégorie FROM CLIENTS
14. Que fait cette requête, sachant que le mot
Distinct élimine les répétitions dune même
valeur (les doublons) ?
Cette requête affiche tous les codes de la
catégorie directement à partir de la table
CLIENTS ). Remarque SELECT CATEGORIE.Code de
la catégorie FROM CATEGORIE donne le même
résultat.
Voici, le résultat de la requête exprimée par
le biais du logiciel ACCESS.
26Parlons un peu SQL
Sur la norme du langage SQL, il est possible de
trier les données, dans lordre croissant
(alphabétique) ou non.
Requête SQL SELECT CLIENTS.Code de la
catégorie, CLIENTS.N client dans la
catégorie, CLIENTS.Nom de
lentreprise, CLIENTS.Montant des achats FROM
CLIENTS ORDER BY CLIENTS.Nom de lentreprise
ASC
Voici, la même requête exprimée par le biais du
logiciel ACCESS.
27Parlons un peu SQL
Requête SQL SELECT CLIENTS.Code de la
catégorie, CLIENTS.N client dans la
catégorie, CLIENTS.Nom de
lentreprise, CLIENTS.Montant des achats FROM
CLIENTS ORDER BY CLIENTS.Nom de lentreprise
ASC
15. Quelle est la clause qui permet de trier les
données ?
La clause ORDER BY ASC classe dans lordre
croissant un champ particulier, ici le nom de
lentreprise. Remarque Pour effectuer un tri
décroissant il faut utiliser la clause ORDER BY
DESC.
Voici, le résultat de la requête exprimée par
le biais du logiciel ACCESS.
28Parlons un peu SQL
Sur la norme du langage SQL, il est possible
dextraire certaines données en fonction dun
critère de sélection bien précis.
Requête SQL SELECT CLIENTS.Code de la
catégorie, CLIENTS.N client dans la
catégorie, CLIENTS.Nom de
lentreprise, CLIENTS.Montant des achats FROM
CLIENTS WHERE CLIENTS.Code de la catégorie
BOU ORDER BY CLIENTS.Nom de lentreprise
ASC
Voici, la même requête exprimée par le biais du
logiciel ACCESS.
29Parlons un peu SQL
Requête SQL SELECT CLIENTS.Code de la
catégorie, CLIENTS.N client dans la
catégorie, CLIENTS.Nom de
lentreprise, CLIENTS.Montant des achats FROM
CLIENTS WHERE CLIENTS.Code de la catégorie
BOU ORDER BY CLIENTS.Nom de lentreprise
ASC
16. Quelle est la clause qui permet dextraire
certaines données ?
La clause WHERE permet dextraire certaines
données à partir dun critère bien
précis. Remarque On peut utiliser différents
opérateurs de comparaison (, gt, lt, gt, lt, )
Voici, le résultat de la requête exprimée par
le biais du logiciel ACCESS.
30Parlons un peu SQL
Application Il vous est demandé détablir la
liste des clients (par ordre alphabétique) qui
ont acheté pour moins de 20 000 (leur
identifiant, leur nom et le montant des achats
correspondant).
17. Quelle est la table concernée par cette
requête ?
La table CLIENTS est nécessaire pour réaliser
cette requête
31Parlons un peu SQL
Application Il vous est demandé détablir la
liste des clients (par ordre alphabétique) qui
ont acheté pour moins de 20 000 (leur
identifiant, leur nom et le montant des achats
correspondant).
Code de la catégorie
N client catégorie
Nom de lentreprise
Montant des achats
18. Quels sont les champs nécessaires pour cette
requête ?
Les champs nécessaires sont Code de la
catégorie, N dans la catégorie, Nom de
lentreprise, Montant des achats.
32Parlons un peu SQL
Application Il vous est demandé détablir la
liste des clients (par ordre alphabétique) qui
ont acheté pour moins de 20 000 (leur
identifiant, leur nom et le montant des achats
correspondant).
Croissant
19. Quel champ peut être concerné pour trier les
clients dans lordre alphabétique ?
Le champ Nom de lentreprise va permettre de
trier la liste des clients par ordre alphabétique.
33Parlons un peu SQL
Application Il vous est demandé détablir la
liste des clients (par ordre alphabétique) qui
ont acheté pour moins de 20 000 (leur
identifiant, leur nom et le montant des achats
correspondant).
lt 20 000
20. Sur quel champ le critère de restriction
va-t-il être posé ?
Le champ Montant des achats va contenir le
critère de restriction afin dobtenir uniquement
la liste des clients pour lequel le montant des
achats est inférieur à 20 000 .
34Parlons un peu SQL
CLIENTS.Nom de lentreprise
SELECT
CLIENTS.Code de la catégorie
CLIENTS.N dans la catégorie
CLIENTS.Nom de lentreprise
CLIENTS.Montant des achats
CLIENTS.Montant des achats
CLIENTS
FROM
21 Écrivez cette requête sous la forme SQL.
WHERE
ORDER BY
,
,
lt20000
,
ASC
35Parlons un peu SQL
Application Il vous est demandé détablir la
liste des clients (par ordre alphabétique) qui
ont acheté pour moins de 20 000 (leur
identifiant, leur nom et le montant des achats
correspondant).
SELECT CLIENTS.Code de la catégorie,
CLIENTS.N dans la catégorie,
CLIENTS.Nom de lentreprise, CLIENTS.Montant
des achats, FROM CLIENTS WHERE CLIENTS .Montant
des achatslt20000 ORDER BY CLIENTS.Nom de
lentreprise ASC
22. Quel est le critère qui détermine la fin
dune requête ?
Le permet de mettre fin à lexpression
dune requête.
36DOSSIER 11
- Activité 4 Le lien entre les différentes tables
37Les liens entre les différentes tables
Il vous est demandé de présenter la liste des
clients avec leur identité, le montant des achats
et leur taux de remise, dans lordre alphabétique
du nom de lentreprise du client.
23. Quelles sont les tables concernées par cette
requête ?
La table CLIENTS est nécessaire pour réaliser
cette requête. Mais également la table CATEGORIE
est nécessaire pour connaître le taux de remise.
38Les liens entre les différentes tables
Application Il vous est demandé détablir la
liste des clients (par ordre alphabétique) qui
ont acheté pour moins de 20 000 (leur
identifiant, leur nom et le montant des achats
correspondant).
SELECT CLIENTS.Code de la catégorie,
CLIENTS.N dans la catégorie,
CLIENTS.Nom de lentreprise, CLIENTS.Montant
des achats, CATEGORIE.Taux de
remise FROM CLIENTS, CATEGORIE WHERE
CLIENTS.Code de la catégorieCATEGORIE.Code de
la catégorie ORDER BY CLIENTS.Nom de
lentreprise ASC
24. Quel est le critère qui permet de relier
(jointure) les deux tables nécessaires à
cette requête ?
Dans la clause WHERE on retrouve le lien qui
permet de relier la clé étrangère (de la table
CLIENTS) vers sa clé primaire (de la table
CATEGORIE). De plus on retrouve le nom de la
table CATEGORIE dans la clause FROM.
39Les liens entre les différentes tables
Application Il vous est demandé détablir la
liste des clients, par ordre alphabétique
(afficher le nom des clients et leur adresse
complète).
25. Quelles sont les tables concernées par cette
requête ?
La table CLIENTS est nécessaire pour réaliser
cette requête. Mais également la table VILLES est
nécessaire pour Extraire uniquement les clients
de la ville dAubagne.
40Les liens entre les différentes tables
Application Il vous est demandé détablir la
liste des clients, par ordre alphabétique
(afficher le nom des clients et leur adresse
complète).
Nom de lentreprise
Nom de la ville
Adresse
Suite
Code postal
26. Quels sont les champs nécessaires pour cette
requête ?
Les champs nécessaires sont Nom de
lentreprise, Adresse, Suite, Code postal, et Nom
de la ville.
41Les liens entre les différentes tables
Application Il vous est demandé détablir la
liste des clients, par ordre alphabétique
(afficher le nom des clients et leur adresse
complète).
Croissant
27. Quel champ peut être concerné pour trier les
clients dans lordre alphabétique ?
Le champ Nom de lentreprise va permettre de
trier la liste des clients par ordre alphabétique.
42Les liens entre les différentes tables
Application Il vous est demandé détablir la
liste des clients, par ordre alphabétique
(afficher le nom des clients et leur adresse
complète).
28. Quel est le champ qui permet de relier
(jointure) les deux tables ?
Le champ Code postal permet de relier la table
CLIENTS à la table VILLES.
43Les liens entre les différentes tables
VILLES.Code postal
CLIENTS.Code postal
CLIENTS.Nom de lentreprise
SELECT
CLIENTS.Nom de lentreprise
CLIENTS.Adresse
CLIENTS.Suite
CLIENTS.Code postal
VILLES.Nom de la ville
CLIENTS
VILLES
FROM
29 Écrivez cette requête sous la forme SQL.
WHERE
ORDER BY
,
,
,
,
,
ASC
44Les liens entre les différentes tables
Application Il vous est demandé détablir la
liste des clients, par ordre alphabétique
(afficher le nom des clients et leur adresse
complète).
SELECT CLIENTS.Nom de lentreprise,
CLIENTS.Adresse, CLIENTS.Suite,
CLIENTS.Code postal, VILLES.Nom de la
ville FROM CLIENTS, VILLES WHERE CLIENTS.Code
postalVILLES.Code postal ORDER BY
CLIENTS.Nom de lentreprise ASC
Voici le résultat de la requête
45DOSSIER 11
- Activité 5 La réalisation de calculs et
lutilisation des fonctions
46La réalisation de calculs
Table 1 PRODUITS (Reference du produit,
Designation du produit, Prix unitaire du
produit) Clé primaire Reference du
produit Clé étrangère Table 2 LIGNE_FACTURES
(Reference du produit, N_facture, Quantite) Clé
primaire Reference du produit, N_facture Clé
étrangère Reference du produit en référence à
Reference du produit de PRODUITS N_facture en
référence à N_facture de FACTURES Table 3
FACTURES (N_facture, Date de la facture, Payée,
Code de la categorie, N client dans la
categorie) Clé primaire N_facture Clé
étrangère Code de la categorie N client dans
la categorie en référence à Code de la
categorie N client dans la categorie de
CLIENTS Table 4 CLIENTS (Code de la categorie,
N_client dans la categorie, Nom de lentreprise,
Adresse, Adresse Suite, Code postal, Montant
des achats, Suivi par le représentant n,
Téléphone, E-mail) Clé primaire Code de la
categorie N client dans la categorie Clé
étrangère Code postal en référence à Code
postal de VILLES Table 5 VILLES (Code postal,
Nom de la ville) Clé primaire Code postal Clé
étrangère
Référence du produit Désignation du produit Prix unitaire du produit
F001 Farine de blé 2,40
L001 Levure de bière 21,50
L002 Levain naturel 11,45
S001 Sucre glace 11,00
S002 Sucre vanillé 8,30
Net_commercial
2,28
20,42
10,88
10,45
7,88
Les calculs en SQL
SELECT PRODUITS.Prix unitaire du produit0,95
AS Net_commercial FROM PRODUITS
Remarque le mot-clé AS permet de renommer
le champ qui contient le résultat.
Ou
SELECT PRODUITS.Prix unitaire du produit -
PRODUITS.Net_commercial FROM PRODUITS
30. Quels types de calcul peut-on réaliser avec
le SQL ?
Il est possible dutiliser les quatre opérateurs
arithmétiques (, -, /, ) en combinant des noms
de champ et/ou des chiffres.
Retour vers les liens
47Lutilisation des fonctions
Table 1 PRODUITS (Reference du produit,
Designation du produit, Prix unitaire du
produit) Clé primaire Reference du
produit Clé étrangère Table 2 LIGNE_FACTURES
(Reference du produit, N_facture, Quantite) Clé
primaire Reference du produit, N_facture Clé
étrangère Reference du produit en référence à
Reference du produit de PRODUITS N_facture en
référence à N_facture de FACTURES Table 3
FACTURES (N_facture, Date de la facture, Payée,
Code de la categorie, N client dans la
categorie) Clé primaire N_facture Clé
étrangère Code de la categorie N client dans
la categorie en référence à Code de la
categorie N client dans la categorie de
CLIENTS Table 4 CLIENTS (Code de la categorie,
N_client dans la categorie, Nom de lentreprise,
Adresse, Adresse Suite, Code postal, Montant
des achats, Suivi par le représentant n,
Téléphone, E-mail) Clé primaire Code de la
categorie N client dans la categorie Clé
étrangère Code postal en référence à Code
postal de VILLES Table 5 VILLES (Code postal,
Nom de la ville) Clé primaire Code postal Clé
étrangère
Référence du produit N facture Quantite
F001 1 100
F001 3 125
F001 5 250
L001 1 10
L001 2 75
L001 3 10
L001 5 74
L002 2 50
S001 1 10
S001 2 150
S001 5 44
S002 2 50
S002 3 30
Quantite_totale
275
Les fonctions en SQL
SELECT SUM(FACTURES.Quantite) AS
Quantite_totale FROM FACTURES WHERE
FACTURES.Num_facture2
Remarque le mot-clé AS permet de renommer
le champ qui contient le résultat.
31. Expliquer le résultat obtenu.
La requête affiche la quantité totale des
produits vendus dans la facture n 2.
32. En déduire la fonction SUM.
La fonction SUM permet de réaliser une
addition(une somme) des valeurs contenues dans
le champ spécifié. Cette fonction doit
sappliquer sur un champ au format numérique.
Retour vers les liens
48Lutilisation des fonctions
Table 1 PRODUITS (Reference du produit,
Designation du produit, Prix unitaire du
produit) Clé primaire Reference du
produit Clé étrangère Table 2 LIGNE_FACTURES
(Reference du produit, N_facture, Quantite) Clé
primaire Reference du produit, N_facture Clé
étrangère Reference du produit en référence à
Reference du produit de PRODUITS N_facture en
référence à N_facture de FACTURES Table 3
FACTURES (N_facture, Date de la facture, Payée,
Code de la categorie, N client dans la
categorie) Clé primaire N_facture Clé
étrangère Code de la categorie N client dans
la categorie en référence à Code de la
categorie N client dans la categorie de
CLIENTS Table 4 CLIENTS (Code de la categorie,
N_client dans la categorie, Nom de lentreprise,
Adresse, Adresse Suite, Code postal, Montant
des achats, Suivi par le représentant n,
Téléphone, E-mail) Clé primaire Code de la
categorie N client dans la categorie Clé
étrangère Code postal en référence à Code
postal de VILLES Table 5 VILLES (Code postal,
Nom de la ville) Clé primaire Code postal Clé
étrangère
Référence du produit N facture Quantite
F001 1 100
F001 3 125
F001 5 250
L001 1 10
L001 2 75
L001 3 10
L001 5 74
L002 2 50
S001 1 10
S001 2 150
S001 5 44
S002 2 50
S002 3 30
Nombre-de_ligne
3
Les fonctions en SQL
SELECT COUNT(FACTURES.Quantite) AS
Nombre_de_ligne FROM FACTURES WHERE
FACTURES.Num_facture2
Remarque le mot-clé AS permet de renommer
le champ qui contient le résultat.
33. Expliquer le résultat obtenu.
La requête affiche le nombre des produits vendus
dans la facture n 2.
34. En déduire la fonction COUNT.
La fonction COUNT compte le nombre
denregistrements dune table. Elle est
utilisable sur nimporte quel type de champ
(texte, numérique).
Retour vers les liens
49Lutilisation des fonctions
Table 1 PRODUITS (Reference du produit,
Designation du produit, Prix unitaire du
produit) Clé primaire Reference du
produit Clé étrangère Table 2 LIGNE_FACTURES
(Reference du produit, N_facture, Quantite) Clé
primaire Reference du produit, N_facture Clé
étrangère Reference du produit en référence à
Reference du produit de PRODUITS N_facture en
référence à N_facture de FACTURES Table 3
FACTURES (N_facture, Date de la facture, Payée,
Code de la categorie, N client dans la
categorie) Clé primaire N_facture Clé
étrangère Code de la categorie N client dans
la categorie en référence à Code de la
categorie N client dans la categorie de
CLIENTS Table 4 CLIENTS (Code de la categorie,
N_client dans la categorie, Nom de lentreprise,
Adresse, Adresse Suite, Code postal, Montant
des achats, Suivi par le représentant n,
Téléphone, E-mail) Clé primaire Code de la
categorie N client dans la categorie Clé
étrangère Code postal en référence à Code
postal de VILLES Table 5 VILLES (Code postal,
Nom de la ville) Clé primaire Code postal Clé
étrangère
TABLE.Nom_champ
SELECT
Nom de la fonction
Les fonctions en SQL
SELECT COUNT(FACTURES.Quantite) AS
Nombre_de_ligne FROM FACTURES WHERE
FACTURES.Num_facture2
Nombre_de_ligne
3
(
)
Remarque le mot-clé AS permet de renommer
le champ qui contient le résultat.
33. Quelle est la syntaxe permettant dutiliser
une fonction.
Le mot clé AS est facultatif. Il permet de
renommer le champ qui contient le résultat.
Il existe dautres fonctions.
Le minimum MIN
AS
Le maximum MAX
Retour vers les liens
La moyenne AVG
Titre_du_champ
50Première STG Gestion
Diaporama adapté et automatisé par M. Grard
(enseignant)
- Sources
- Éditions Nathan Technique Collection Equilibre
Retour vers les liens