Fiche de cours

Construire des requêtes d'interrogation à l'aide des clauses du langage SQL

Lycée   >   Terminale   >   NSI   >   Construire des requêtes d'interrogation à l'aide des clauses du langage SQL

  • Fiche de cours
  • Quiz et exercices
  • Vidéos et podcasts
Objectif

Construire des requêtes d’interrogation à l’aide des clauses (instructions) du langage SQL : SELECT, FROM, WHERE, JOIN.

Points clés
  • Le langage SQL comporte des clauses qui permettent d’effectuer des requêtes d’interrogation sur une base de données relationnelle.
  • SELECT est une clause de base du langage SQL, elle permet notamment d’extraire des données d’une base et de calculer de nouvelles données à partir de données existantes.
  • La clause SQL SELECT est notamment composée des clauses FROM, WHERE et JOIN.
    • La clause FROM permet d’indiquer la table où on va extraire des données.
    • La clause WHERE permet de filtrer des données en respectant certaines conditions. Il faut utiliser des opérateurs pour écrire les conditions.
    • La clause JOIN permet de croiser des données dans des relations qui ont un attribut en commun.
Pour bien comprendre
  • Base de données relationnelles
  • Notion de SGBD (système de gestion de base de données)
  • Découvrir le langage SQL.
  • Utiliser l’algèbre relationnel.
1. Les requêtes d’interrogation
a. Le langage SQL (rappels)

Le langage SQL est un langage de requêtes structurées qui permet de définir, de manipuler et de contrôler les données d’un SGBD relationnel (système de gestion de base de données relationnelle).

On utilise des requêtes SQL pour dialoguer et interagir avec une base de données relationnelle.

Remarque
Toutes les bases de données qui suivent sont des bases de données relationnelles.
Une requête d’interrogation est une requête SQL composée de clauses SQL, qui permet de réaliser des combinaisons d’opérations sur différentes relations (tables). Le résultat de cette combinaison d’opérations est lui-même une relation dont l’existence ne dure qu’un temps.
b. Les clauses du langage SQL
Principe
Une clause est une instruction SQL qui précise un fonctionnement particulier.

Les principales clauses SQL sont : SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY et JOIN. Elles sont classées selon les requêtes qu’elles permettent de créer.

Important
Une commande SQL est composée de plusieurs clauses qui ont un rôle et un ordre précis dans la commande.
Une clause SQL est donc une commande SQL si elle est composée d’autres clauses.
Les clauses SQL
La clause SELECT
SELECT est la clause de base du langage SQL. Elle permet notamment d’extraire des données d’une base de données ou de calculer de nouvelles données à partir de données existantes.

La clause SELECT est notamment composée des clauses FROM, WHERE et JOIN, il s’agit donc d’une commande SQL.

La clause FROM

FROM est une clause SQL qui permet d’indiquer la table où on va extraire des données.

La clause WHERE

WHERE est une clause SQL qui permet de filtrer des données en respectant certaines conditions.

Il faut utiliser des opérateurs pour écrire les conditions.

La clause JOIN

JOIN est une clause SQL qui permet de réaliser des jointures de relations, c’est-à-dire de lier ces relations en croisant des données présentes dans ces relations.

2. Chercher des informations dans une base de données

Chercher des informations dans une base de données revient à extraire des données de cette base de données. On obtient ainsi une nouvelle relation (table) qui ne dure que le temps de la recherche.

a. Extraire des données
Pour extraire des données d’une relation, on utilise :
  • la clause SELECT suivie du nom de l’attribut ou des attributs séparés par une virgule ;
  • puis la clause FROM suivie du nom de la relation ;
  • puis la clause WHERE suivie des conditions de restrictions
La syntaxe de la requête SQL est la suivante :
SELECT attributs_selectionnes
FROM nom_relation
WHERE conditions_attributs_selectionnes;
Exemple
On considère la relation dont le schéma relationnel est :
PAYS(id, nom, capitale, population).

Pour extraire le nom des pays qui ont une population inférieure à 1 000 000 d’habitants, on exécute la requête SQL suivante :
SELECT nom FROM PAYS WHERE population<1000000;
b. Créer des conditions

Lorsqu’on interroge une base de données, il faut écrire en SQL les conditions. Pour écrire une condition avec la clause WHERE, on peut utiliser les opérations classiques de comparaison, les opérateurs logiques et les opérateurs jokers.

Remarque
On peut mettre plusieurs conditions, à condition de mettre des parenthèses.
Les opérateurs
Les opérateurs de comparaison
Les opérateurs de comparaison permettent de comparer des valeurs numériques.

Le tableau suivant liste les opérateurs de comparaison du langage SQL.

Opérateur de comparaison Signification
< inférieur
> supérieur
= égal
<= inférieur
ou égal
>= supérieur
ou égal
<> différent
Exemple
La condition nombre <> 10 revient à tester si l’attribut nombre est différent de 10.
Les opérateurs logiques
Les opérateurs logiques permettent de composer des conditions.

Le tableau suivant liste les opérateurs logiques du langage SQL.

Opérateur logique Signification
AND et
OR ou
NOT non
Exemple
La condition nombre >= 10 AND nombre <= 15 revient à tester si l’attribut nombre est compris entre 10 et 15 inclus.
Remarque
Pour tester si il y a une valeur, on utilise l’opérateur logique IS NULL.
Les opérateurs jokers
Si la condition porte sur une chaine de caractères, on peut utiliser les opérateurs jokers qui sont des caractères de substitution permettant de simplifier l’écriture.

Le tableau suivant liste les opérateurs jokers du langage SQL.

Opérateur Joker Signification
_ Remplace un caractère de la chaine.
% Remplace 0 ou plusieurs caractères de la chaine.
On associe ces opérateurs jokers à l’opérateur LIKE, afin de réaliser une comparaison partielle dans une base de données.
Il faut utiliser l’instruction :
LIKE "opérateur joker".
Exemples
  • like "_OM" peut correspondre à TOM, SOM, BOM, ZOM, etc.
  • like "%OR" peut correspondre à OR, COR, TRESOR, etc.

Cela peut permettre de réaliser une recherche dans des chaines de caractères d’une base de données.

Exemple

On considère la relation dont le schéma relationnel est :

PAYS(id, nom, capitale, population)

On souhaite écrire une requête d’interrogation SQL qui permette de sélectionner le nom et la capitale de la relation PAYS dont la population est comprise entre 100 000 et 1 000 000 d’habitants, ou dont le nom se termine par « ON ».

La requête d’interrogation SQL est la suivante :

SELECT nom,capitale FROM PAYS
WHERE (population>100000 AND population<1000000)
OR (nom
LIKE ‘%ON’);

3. Calculer de nouvelles données

Le langage SQL contient des fonctions qui permettent d’effectuer des calculs sur les relations.

Fonction SQL Signification
COUNT(*) Calcule le nombre de lignes (enregistrements) de la relation.
COUNT(attribut1) Calcule le nombre de lignes où l'attribut attribut1 est non nul.
COUNT(DISTINCT attribut1) Calcule le nombre de valeurs distinctes prises par l'attribut attribut1.
SUM(attribut1) Calcule la somme des valeurs de l'attribut attribut1.
AVG(attribut1) Calcule la moyenne des valeurs de l'attribut attribut1.
MAX(attribut1) Donne la valeur maximale de l'attribut attribut1.
MIN(attribut1) Donne la valeur minimale de l'attribut attribut1.
Remarque
Ces fonctions permettent de renvoyer les valeurs de données de type numérique ou date/heure.
Pour utiliser ces fonctions, il faut utiliser les clauses SELECT et FROM avec la syntaxe suivante.

SELECT Nom_Fonction(Attribut_voulu) 
FROM nom_relation;

Exemple
On considère la relation PAYS(id, nom, population).

Pour obtenir la moyenne de population de la relation PAYS, on doit taper la requête SQL suivante :

SELECT AVG(population) FROM PAYS;

4. Réaliser une jointure de relations
Réaliser des jointure de relations consiste à lier ces relations en croisant des données présentes dans ces relations.

Une jointure est un produit cartésien de deux relations.

Rappel
L’opération du produit cartésien s’applique à des relations qui n’ont aucun attribut en commun.
Concrètement, le produit cartésien des relations T1 par T2 s’obtient en ajoutant à chaque enregistrement de la relation T1 l’un des enregistrements de la relation T2.

Pour réaliser une jointure de relations, on utilise la clause JOIN : il faut pour cela que les relations table1 et table2 aient un attribut en commun (key).

La syntaxe de la requête d’interrogation SQL qui permet la jointure des relation table1 et table2 est la suivante.

SELECT * FROM table1 JOIN table2
ON table1.key=table2.key;

Si on veut afficher l’attribut1 de table1 et l’attribut3 de table2, on utilise la requête d’interrogation SQL suivante :

SELECT table1.attribut1, table2.attribut3
FROM table1 JOIN table2
ON table1.key=table2.key;

On peut également ajouter des conditions à l’aide de la clause WHERE.

Exemple
On considère les relations DEMOGRAPHIE et VILLES ci-dessous.
DEMOGRAPHIE
code population superficie
 
VILLES
code nom
Pour créer une relation qui donne le nom des villes avec la population de ces villes, on doit taper la requête d’interrogation SQL suivante :

SELECT VILLES.nom,DEMOGRAPHIE.population
FROM DEMOGRAPHIE JOIN VILLES
ON DEMOGRAPHIE.code=VILLES.code;

Évalue ce cours !

 

Des quiz et exercices pour mieux assimiler sa leçon

La plateforme de soutien scolaire en ligne myMaxicours propose des quiz et exercices en accompagnement de chaque fiche de cours. Les exercices permettent de vérifier si la leçon est bien comprise ou s’il reste encore des notions à revoir.

S’abonner

 

Des exercices variés pour ne pas s’ennuyer

Les exercices se déclinent sous toutes leurs formes sur myMaxicours ! Selon la matière et la classe étudiées, retrouvez des dictées, des mots à relier ou encore des phrases à compléter, mais aussi des textes à trous et bien d’autres formats !

Dans les classes de primaire, l’accent est mis sur des exercices illustrés très ludiques pour motiver les plus jeunes.

S’abonner

 

Des quiz pour une évaluation en direct

Les quiz et exercices permettent d’avoir un retour immédiat sur la bonne compréhension du cours. Une fois toutes les réponses communiquées, le résultat s’affiche à l’écran et permet à l’élève de se situer immédiatement.

myMaxicours offre des solutions efficaces de révision grâce aux fiches de cours et aux exercices associés. L’élève se rassure pour le prochain examen en testant ses connaissances au préalable.

S’abonner

Des vidéos et des podcasts pour apprendre différemment

Certains élèves ont une mémoire visuelle quand d’autres ont plutôt une mémoire auditive. myMaxicours s’adapte à tous les enfants et adolescents pour leur proposer un apprentissage serein et efficace.

Découvrez de nombreuses vidéos et podcasts en complément des fiches de cours et des exercices pour une année scolaire au top !

S’abonner

 

Des podcasts pour les révisions

La plateforme de soutien scolaire en ligne myMaxicours propose des podcasts de révision pour toutes les classes à examen : troisième, première et terminale.

Les ados peuvent écouter les différents cours afin de mieux les mémoriser en préparation de leurs examens. Des fiches de cours de différentes matières sont disponibles en podcasts ainsi qu’une préparation au grand oral avec de nombreux conseils pratiques.

S’abonner

 

Des vidéos de cours pour comprendre en image

Des vidéos de cours illustrent les notions principales à retenir et complètent les fiches de cours. De quoi réviser sa prochaine évaluation ou son prochain examen en toute confiance !

S’abonner

Découvrez le soutien scolaire en ligne avec myMaxicours

Plongez dans l'univers de myMaxicours et découvrez une approche innovante du soutien scolaire en ligne, conçue pour captiver et éduquer les élèves de CP à la terminale. Notre plateforme se distingue par une riche sélection de contenus interactifs et ludiques, élaborés pour stimuler la concentration et la motivation à travers des parcours d'apprentissage adaptés à chaque tranche d'âge. Chez myMaxicours, nous croyons en une éducation où chaque élève trouve sa place, progresse à son rythme et développe sa confiance en soi dans un environnement bienveillant.

Profitez d'un accès direct à nos Profs en ligne pour une assistance personnalisée, ou explorez nos exercices et corrigés pour renforcer vos connaissances. Notre assistance scolaire en ligne est conçue pour vous accompagner à chaque étape de votre parcours éducatif, tandis que nos vidéos et fiches de cours offrent des explications claires et concises sur une multitude de sujets. Avec myMaxicours, avancez sereinement sur le chemin de la réussite scolaire, armé des meilleurs outils et du soutien de professionnels dédiés à votre épanouissement académique.

Fiches de cours les plus recherchées

NSI

Construire des requêtes d'insertion et de mise à jour à l'aide du langage SQL

NSI

Découvrir le système sur une puce

NSI

Comprendre la gestion de plusieurs processus

NSI

Comprendre la notion d'interblocage de processus

NSI

Comprendre les protocoles de routage

NSI

Introduire la cryptographie

NSI

Comprendre le chiffrement symétrique

NSI

Comprendre le chiffrement asymétrique

NSI

Décrire de manière détaillée le protocole HTTPS

NSI

Comprendre qu'un programme peut être une donnée