Langage d'interrogation de donnees

Langage d'interrogation de donnees

Langage d'interrogation de données

Un langage d'interrogation de données est un langage informatique, destiné à la recherche, extraction, tri et mise en forme, de données dans une base de données.

Sommaire

SQL ou le langage d'interrogation de données (LID)

Une base de donnée peut être interrogée de manière formelle par le langage SQL ou de manière informelle par le langage algébrique. Le langage SQL (Structured Query Langage) est une évolution de SEQUEL développé en 1976 par IBM comme un langage de recherche. SQL est devenu un standard des bases de données relationnelles (en 1987, normalisation de ce langage par ANSI). SQL s'utilise sous deux formes, soit d'une manière interactive, soit à l'intérieur d'un langage hôte (C, fortran, cobol…). SQL ne comporte qu'une vingtaine d'instructions, il est dit procédural (l'accès aux données se fait par leur contenu et non par leur chemin). SQL est un langage de définition des données (LDD), de manipulation de données (LMD), de contrôle des données (LCD) et d'interrogation des données (LID).Malgré le succès du langage SQL qui a suivi, Edgar F. Codd dénoncera cet outil qu'il considère comme une interprétation incorrecte de ses théories.

Le langage algébrique (LA) correspond à un pseudo algorithme du SQL. il est composé de peu d 'opérateurs (sélection, projection et jointure étant les opérateurs de base).

Terminologie

SQL comme le LA permettent la gestion et l'interrogation des bases de données. Une base de données peut être considérée comme une table a deux dimensions, dont les colonnes sont les champs et les lignes sont les tuples. Plusieurs tables peuvent contenir des colonnes de même noms, pour les différencier il faudra préfixer les rubriques par le nom de la table.

Remarque : La base de donnée fournie en exemple est composée de 2 tables. La table EMPLOYE constitué d'un code employé, d'un nom, d'un prénom, d'une date de naissance, d'une adresse et d'un code emploi. La table EMPLOI constituée d'un code emploi (auquel fait référence la table EMPLOYE), d'un libellé d'emploi de la ville concernée par cet emploi.

La projection

La projection est une opération qui consiste à ne sélectionner que certaines données pour l'affichage. La syntaxe est la suivante :

R1 ← PROJ(nomdelatable; liste des propriétés)
SELECT liste des propriétés
FROM nomdelatable ;

Exemples :

LA : PROJ(Employe; nom, prénom)
SQL : SELECT nom, prénom
      FROM Employe ;

Cette requête ne renvoie que les nom et prénom de la table employé

LA : PROJ(Employe; *)
SQL : SELECT * 
      FROM employe ;

Cette requête renvoie toutes les rubriques de la table employé grâce au caractère joker *.

Le tri

Pour obtenir un affichage trié il est nécessaire de le préciser. L'opérateur de tri est à utiliser en langage algébrique. La clause order by est à ajouter a la fin de la requête SQL. Le tri par defaut s'effectue par ordre croissant ; pour obtenir un tri par ordre décroissant, il faut rajouter le paramètre DESC. Le tri contient au maximum 16 critères.

R2 ← TRI(R1; attribut du tri croissant)
SELECT Liste des propriétés
FROM nomdelatable
ORDER BY propriété ASC;

Ou :

R2 ← TRI(R1; attribut du tri décroissant)
SELECT Liste des propriétés
FROM nomdelatable
ORDER BY propriété DESC;

Attention ! : le tri ne s'effectue qu'à l'affichage, en aucun cas le base de donnée n'est modifiée.

Exemple :

  • Sélection des employés (nom et prénom) triée par ordre alphabétique du nom et par âge croissant.
R1 ← PROJ(Employe; nom, prenom, datenais)
R2 ← TRI(R1; nom croissant, datenais décroissant)
SELECT nom, prenom, datenais
FROM Employe
ORDER BY nom ASC, datenais DESC ;

Attention ! : Pour un tri multi-critère, l'ordre de tri est celui de la rubrique d'avant.

  • A partir du tri ci-dessus, nous rajoutons un tri par prénom croissant
R1 ← PROJ(Employe; nom, prenom, datenais)
R2 ← TRI(R1; nom croissant, datenais décroissant, prenom croissant)
SELECT nom, prenom, datenais
FROM Employe
ORDER BY nom ASC, datenais DESC, prenom ASC ;

La sélection

La sélection consiste a séléctionner des lignes répondant à un prédicat. La syntaxe est la suivante :

R1 ← SEL(R; propriété opérateur valeur ET propriété opérateur valeur)

Attention ! : Le langage algébrique s'écrit à l'envers du SQL.

SELECT liste des propriétés
FROM nomdelatable
WHERE propriété op valeur
AND propriété op valeur ;
  • Q'est-ce qu'un critère de sélection (appelé aussi prédicat) ?

C'est le résultat de la comparaison de deux expressions au moyen d'un opérateur de comparaison.

  • Q'est-ce qu'un opérateur ?

Un opérateur décrit une opération de comparaison.

Egal = différent != ou ⇔ suivant le SGBDR Supérieur > Supérieur ou égal >= Inférieur < Inférieur ou égal ⇐

Attention ! : Les minuscules sont differenciées des majuscules

La jointure

C'est une opération permettant de ramener sur une même ligne des opérations venant de plusieurs tables. Une jointure s'effectue grâce à un produit cartésien de plusieurs tables (256 maximum)et l'application des sélections.

R3 = JOIN(R1, R2; R1.propriété opérateur R2.propriété)

Les sous-interrogations

Une sous-interrogation est l'expression d'un prédicat à l'aide du résultat d'un select. Il peut y avoir jusqu’à 16 niveaux de sous-interrogations. Une erreur est générée si une sous-interrogation n'amène rien ou si elle ramène plus de valeurs que ne peut en accepter le champs.

Liens externes

  • (fr) Laurent Audibert, « Langage SQL » sur developpez.com
  • Portail de l’informatique Portail de l’informatique
  • Portail des bases de données Portail des bases de données
Ce document provient de « Langage d%27interrogation de donn%C3%A9es ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Langage d'interrogation de donnees de Wikipédia en français (auteurs)

Игры ⚽ Нужно решить контрольную?

Regardez d'autres dictionnaires:

  • Langage D'interrogation De Données — Un langage d interrogation de données est un langage informatique, destiné à la recherche, extraction, tri et mise en forme, de données dans une base de données. Sommaire 1 SQL ou le langage d interrogation de données (LID) 1.1 Terminologie 1.2 …   Wikipédia en Français

  • Langage d'interrogation de données — Un langage d interrogation de données est un langage informatique, destiné à la recherche, extraction, tri et mise en forme, de données dans une base de données. Sommaire 1 SQL ou le langage d interrogation de données (LID) 1.1 Terminologie 1.2… …   Wikipédia en Français

  • Interrogation — Cette page d’homonymie répertorie les différents sujets et articles partageant un même nom. L interrogation est en linguistique un acte de langage par laquelle l émetteur d un énoncé adresse au destinataire (réel ou fictif) de celui ci une… …   Wikipédia en Français

  • Langage SQL — Structured Query Language SQL Apparu en 1974 Auteur …   Wikipédia en Français

  • Langage structuré de requêtes — Structured Query Language SQL Apparu en 1974 Auteur …   Wikipédia en Français

  • Langage dédié — Un langage dédié (Domain specific language) est langage dont l utilisation est dédiée à un domaine d application. Sommaire 1 Tour d horizon technologique 1.1 Analogie 1.2 Définitions …   Wikipédia en Français

  • Base de données — Pour les articles homonymes, voir base, BD, BDD et DB. modèle de données de la base de données de MediaWiki …   Wikipédia en Français

  • LANGAGE (PHILOSOPHIES DU) — L’intérêt pour la langue est un trait dominant de la philosophie contemporaine. Non que nos contemporains soient les premiers à découvrir le langage. Celui ci a toujours été à la place d’honneur dans la philosophie, tant il est vrai que la… …   Encyclopédie Universelle

  • Banque de données — Base de données Pour les articles homonymes, voir base, BD, BDD et DB. Schéma de la base de données relationnelle …   Wikipédia en Français

  • Banques de données — Base de données Pour les articles homonymes, voir base, BD, BDD et DB. Schéma de la base de données relationnelle …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”