Fichier de rejeu Close

Indication Close

A propos de... Close

Commentaire Close

Systèmes d'Information

  • Notions mathématiques
  • Calcul relationnel
  • Algèbre relationnelle
  • Langage de requêtes
  • Arbre de requêtes
  • QCM
  • Introduction
  • Commandes de bases
  • Langage de définition de données
  • Types de données
  • Requêtes
  • Présentation
  • Calcul relationnel
  • Algèbre relationnelle
  • Division relationnelle
  • Dépendances fonctionnelles
  • Décomposition de relations
  • Inférence logique
  • Normalisation
  • Aux pays des bières
  • Modélisation
  • Exercices
  • Présentation
  • Aux pays des bières
  • Au Tournoi des six nations
  • Salles de concerts
  • Définitions
  • Langage SQL
  • Modèle relationnel
  • Films
  • Repas
  • Repas
Index

Téléchargements

  • Site
  • Sources
  • EniBook
logo

Crédits

© Your Copyright

Aide

En-tête

MenuContenu
Sommaire,
Téléchargements
Aide sur les outils

Pied de page

ChevronAction
Aller en haut de la page courante
Aller en bas de la page courante
Passer à la page précédente
Passer à la page suivante

Recherches sur une table

L’objectif de ces exercices est de savoir représenter sous forme d’arbre de requêtes les requêtes de base sur une seule table de la base de données « Aux pays des bières ».

8/8 Aux pays des bières : SELECT, FROM, WHERE
  1. Vérification du contenu de la table 'bars'
    • Question
    • Solution
    Construire un arbre de requêtes répondant à la question :
    • \(Q_1\) : « récupérer les bars de la base de données ».
    Votre réponse :
    Arbre de requêtes : graph123.json

    Tables

    Opérateurs unaires

    Opérateurs binaires

    Vue d'ensemble
    id_barbarpays
    1Bar du CoinFrance
    2Corners PubUSA
    3Cafe der EckeAllemagne
    4Cafe des AmisFrance
    Une solution possible :

    Récupérer les bars : \(\displaystyle Q_1 = bars\)

    Arbre de requêtes : bars-0-1.json

    Tables

    Opérateurs unaires

    Opérateurs binaires

    Vue d'ensemble
    id_barbarpays
    1Bar du CoinFrance
    2Corners PubUSA
    3Cafe der EckeAllemagne
    4Cafe des AmisFrance
  2. Vérification du contenu de la table 'services'
    • Question
    • Solution
    Construire un arbre de requêtes répondant à la question :
    • \(Q_1\) : « récupérer les services de la base de données ».
    Votre réponse :
    Arbre de requêtes : graph130.json

    Tables

    Opérateurs unaires

    Opérateurs binaires

    Vue d'ensemble
    id_barid_bierestock
    111000
    12250
    1350
    1410
    1510
    1610
    1720
    1820
    21100
    261500
    355000
    Une solution possible :

    Récupérer les bars : \(\displaystyle Q_1 = services\)

    Arbre de requêtes : bars-0-2.json

    Tables

    Opérateurs unaires

    Opérateurs binaires

    Vue d'ensemble
    id_barid_bierestock
    111000
    12250
    1350
    1410
    1510
    1610
    1720
    1820
    21100
    261500
    355000
  3. Vérification du contenu de la table 'bieres'
    • Question
    • Solution
    Construire un arbre de requêtes répondant à la question :
    • \(Q_1\) : « récupérer les bieres de la base de données ».
    Votre réponse :
    Arbre de requêtes : graph137.json

    Tables

    Opérateurs unaires

    Opérateurs binaires

    Vue d'ensemble
    id_bierebierecouleurorigine
    1KronenbourgBlondeFrance
    2GuinnessBruneIrlande
    3HeinekenBlondeHollande
    4NewcastleRousseUK
    5SpatenBlondeAllemagne
    6BushBlondeUSA
    7KanterbrauBlondeFrance
    8KronenbourgBruneFrance
    Une solution possible :

    Récupérer les bars : \(\displaystyle Q_1 = bieres\)

    Arbre de requêtes : bars-0-3.json

    Tables

    Opérateurs unaires

    Opérateurs binaires

    Vue d'ensemble
    id_bierebierecouleurorigine
    1KronenbourgBlondeFrance
    2GuinnessBruneIrlande
    3HeinekenBlondeHollande
    4NewcastleRousseUK
    5SpatenBlondeAllemagne
    6BushBlondeUSA
    7KanterbrauBlondeFrance
    8KronenbourgBruneFrance
  4. Projection
    • Question
    • Solution
    Construire un arbre de requêtes répondant à la question :
    • \(Q_1\) : « récupérer le nom et la couleur des bières ».
    Votre réponse :
    Arbre de requêtes : graph144.json

    Tables

    Opérateurs unaires

    Opérateurs binaires

    Vue d'ensemble
    bierecouleur
    KronenbourgBlonde
    GuinnessBrune
    HeinekenBlonde
    NewcastleRousse
    SpatenBlonde
    BushBlonde
    KanterbrauBlonde
    KronenbourgBrune
    Une solution possible :

    On applique une projection (\(\Pi\)) sur les colonnes (biere,couleur) de la table bieres.

    Ecriture en algèbre relationnelle :

    • \(Q_1 = \Pi_{(biere,couleur)}(bieres)\)
    Arbre de requêtes : bars-1.json

    Tables

    Opérateurs unaires

    Opérateurs binaires

    Vue d'ensemble
    bierecouleur
    KronenbourgBlonde
    GuinnessBrune
    HeinekenBlonde
    NewcastleRousse
    SpatenBlonde
    BushBlonde
    KanterbrauBlonde
    KronenbourgBrune
  5. Restriction
    • Question
    • Solution
    Construire un arbre de requêtes répondant à la question :
    • \(Q_1\) : « récupérer les bières d’origine française ».
    Votre réponse :
    Arbre de requêtes : graph151.json

    Tables

    Opérateurs unaires

    Opérateurs binaires

    Vue d'ensemble
    id_bierebierecouleurorigine
    1KronenbourgBlondeFrance
    7KanterbrauBlondeFrance
    8KronenbourgBruneFrance
    Une solution possible :

    On applique une restriction (\(\sigma\)) avec la condition [origine = 'France'] sur la table bieres.

    Ecriture en algèbre relationnelle :
    • \(Q_1 = \sigma_{[origine = 'France']}(bieres)\)
    Arbre de requêtes : bars-2.json

    Tables

    Opérateurs unaires

    Opérateurs binaires

    Vue d'ensemble
    id_bierebierecouleurorigine
    1KronenbourgBlondeFrance
    7KanterbrauBlondeFrance
    8KronenbourgBruneFrance
  6. Projection et restriction
    • Question
    • Solution
    Construire un arbre de requêtes répondant à la question :
    • \(Q_1\) : « récupérer le nom bières françaises ».
    Votre réponse :
    Arbre de requêtes : graph158.json

    Tables

    Opérateurs unaires

    Opérateurs binaires

    Vue d'ensemble
    biere
    Kronenbourg
    Kanterbrau
    Kronenbourg
    Une solution possible :

    On applique une projection (\(\Pi\)) sur la colonne biere et une restriction (\(\sigma\)) sur la condition [origine='France'] de la table bieres.

    Ecriture en algèbre relationnelle :
    • \(Q_1 = \Pi_{(biere)}(\sigma_{[origine='France']}(bieres))\).
    Arbre de requêtes : bars-3.json

    Tables

    Opérateurs unaires

    Opérateurs binaires

    Vue d'ensemble
    biere
    Kronenbourg
    Kanterbrau
    Kronenbourg
  7. Connecteur logique
    • Question
    • Solution

    Construire un arbre de requêtes répondant à la question :

    • \(Q_1\) : « récupérer les bières blondes françaises ».
    Votre réponse :
    Arbre de requêtes : graph165.json

    Tables

    Opérateurs unaires

    Opérateurs binaires

    Vue d'ensemble
    id_bierebierecouleurorigine
    1KronenbourgBlondeFrance
    7KanterbrauBlondeFrance
    Une solution possible :

    On vérifie (\(\sigma\)) que les bières sont d’origine française (origine='France') et (\(\land\)) qu’elles sont de couleur blonde (couleur='Blonde')

    Ecriture en algèbre relationnelle :
    • \(Q_1 = \sigma_{[origine='France' \land couleur='Blonde']}(bieres)\).
    Arbre de requêtes : bars-4.json

    Tables

    Opérateurs unaires

    Opérateurs binaires

    Vue d'ensemble
    id_bierebierecouleurorigine
    1KronenbourgBlondeFrance
    7KanterbrauBlondeFrance
  8. Connecteurs logiques
    • Question
    • Solution
    Construire un arbre de requêtes répondant à la question :
    • \(Q_1\) : « récupérer le nom et la couleur des bières françaises blondes et les bières brunes ».
    Votre réponse :
    Arbre de requêtes : graph172.json

    Tables

    Opérateurs unaires

    Opérateurs binaires

    Vue d'ensemble
    id_bierebierecouleurorigine
    1KronenbourgBlondeFrance
    2GuinnessBruneIrlande
    7KanterbrauBlondeFrance
    8KronenbourgBruneFrance
    Une solution possible :

    On vérifie (\(\sigma\)) sur la table bieres qu’elles sont d’origine française (origine='France') et (\(\land\)) de couleur blonde (couleur='Blonde') ou (\(\lor\)) que la couleur des bières est brune (couleur='Brune') .

    Ecriture en algèbre relationnelle :
    • \(Q_1 = \sigma_{[origine='France' \; \land \; couleur='Blonde' \; \lor \; couleur='Brune']}(bieres)\)

    Attention à la priorité du connecteur logique \(\land\) sur le \(\lor\) (de même que la multiplication l’est sur l’addition).

    La requête :
    • \(Q_1 = \sigma_{[origine='France' \; \lor \; couleur='Blonde' \; \land \; couleur='Brune']}(bieres)\)

    donnerait comme résultat … les bières françaises (il ne peut exister des bières blonde et brune à la fois).

    On peut modifier la priorité en parenthésant l’expression logique.

    Qu’obtiendrait-on avec l’expression algébrique :
    • \(Q_2 = \sigma_{[origine='France' \; \land \; (couleur='Blonde' \; \lor \; couleur='Brune')]}(bieres)\)
    Arbre de requêtes : bars-5.json

    Tables

    Opérateurs unaires

    Opérateurs binaires

    Vue d'ensemble
    id_bierebierecouleurorigine
    1KronenbourgBlondeFrance
    2GuinnessBruneIrlande
    7KanterbrauBlondeFrance
    8KronenbourgBruneFrance
 
Systèmes d'Information : Recherches sur une table, 12 févr. 2018.