Cours de Base de Données Cours n.3 Algèbre relationnelle

Documents pareils
Les bases de données

Langage SQL : créer et interroger une base

1 Introduction et installation

Introduction au Système de Gestion de Base de Données et aux Base de Données

Le langage SQL Rappels

Langage SQL (1) 4 septembre IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

Bases de Données relationnelles et leurs systèmes de Gestion

Bases de Données. Plan

ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;

COURS de BASES de DONNEES

Le Langage SQL version Oracle

Interpréteur d algèbre relationnelle

Tickets 3:3. ChevauxPartants

Plan. Bases de Données. Sources des transparents. Bases de SQL. L3 Info. Chapitre 4 : SQL LDD Le langage de manipulation de données : LMD

Bases de données cours 4 Construction de requêtes en SQL. Catalin Dima

Introduction aux bases de données. Généralités sur les bases de données. Fonctions d'un SGBD. Définitions. Indépendance par rapport aux traitements

Optimisation SQL. Quelques règles de bases

Introduction aux Systèmes de Gestion de Bases de Données Relationnelles. Olivier Losson

Modèle Entité-Association. C est un modèle important pour la conception des bases de données relationnelles. Il

Vincent Augusto

16H Cours / 18H TD / 20H TP

SOMMAIRE. Travailler avec les requêtes... 3

TP base de données SQLite. 1 Différents choix possibles et choix de SQLite : 2 Définir une base de donnée avec SQLite Manager

Bases de données réparties: Fragmentation et allocation

Modélisation de bases de données : Le modèle relationnel

Déroulement. Evaluation. Préambule. Définition. Définition. Algorithmes et structures de données 28/09/2009

Notre équipe est toujours à l écoute de nos clients afin de répondre à leurs besoins spécifiques.

BAREME sur 40 points. Informatique - session 2 - Master de psychologie 2006/2007

TP Bases de données réparties

Patrice BOURSIER. Professeur, Univ. de La Rochelle. Bases de Données. Notes de cours

MySQL / SQL EXEMPLES

Bases de Données. Le cas des BD relationnelles ouverture sur les BD relationnelles spatiales Séance 2 : Mise en oeuvre

Bases de données relationnelles & SQL

LE LANGAGE SQL2 1. INTRODUCTION

Dérivation : Résumé de cours et méthodes

INF 232: Langages et Automates. Travaux Dirigés. Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies

Cours: Les Jointures 1

INTRODUCTION AU DATA MINING

Exemple accessible via une interface Web. Bases de données et systèmes de gestion de bases de données. Généralités. Définitions

Limites finies en un point

BASES DE DONNÉES CONCEPTS ET PROGRAMMATION. Antoine Cornuéjols. AgroParisTech, Spécialité Informatique ( ) Version du 19 octobre 2009

Initiation à la Programmation en Logique avec SISCtus Prolog

Rappel sur les bases de données

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

PROJET 1 : BASE DE DONNÉES REPARTIES

14/04/2014. un ensemble d'informations sur un sujet : exhaustif, non redondant, structuré, persistant. Gaëlle PERRIN SID2 Grenoble.

Bases de données avancées Introduction

Bases de données élémentaires Maude Manouvrier

Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)

Cours No 3 : Identificateurs, Fonctions, Premières Structures de contrôle.

Introduction aux Bases de Données

Cours SGBD 1. Concepts et langages des Bases de Données Relationnelles

Equations cartésiennes d une droite

Bases de données relationnelles

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS =

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme

Durée : 4 heures Le sujet se présente sous la forme de deux dossiers indépendants

Mejdi BLAGHGI & Anis ASSÈS

1 Introduction. 2 Le modèle relationnel. 3 Algèbre relationnelle 4 SQL. 5 Organisation physique des données 1/228

Bases de données. Chapitre 1. Introduction

INTRODUCTION AUX TECHNOLOGIES D INGENIERIE DES DONNEES DIRIGEE PAR LES MODELES

Programme détaillé BTS INFORMATIQUE DE GESTION DIPLÔME D ETAT. Objectifs de la formation. Les métiers. Durée de la formation

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

1 Modélisation d une base de données pour une société de bourse

SQL pour. Oracle 10g. Razvan Bizoï. Tsoft, Groupe Eyrolles, 2006, ISBN : , ISBN 13 :

TP3 : Creation de tables 1 seance

SQL Serveur Programme de formation. France Belgique Suisse - Canada. Formez vos salariés pour optimiser la productivité de votre entreprise

Bases de données. Yamine AIT AMEUR. INPT-ENSEEIHT DIMA 2 Rue Charles Camichel Toulouse Cedex 7

Intelligence Artificielle Planification

Calc 2 Avancé. OpenOffice.org. Guide de formation avec exercices et cas pratiques. Philippe Moreau

Baccalauréat universitaire (bachelor) en mathématiques et sciences informatiques

Soutien aux entreprises novatrices

INFORMATIQUECOMMUNE CPGE. Introduction aux Bases de Données Relationnelles

OASIS Date de publication

Plan 1/9/2013. Génération et exploitation de données. CEP et applications. Flux de données et notifications. Traitement des flux Implémentation

LES CARTES À POINTS : POUR UNE MEILLEURE PERCEPTION

Algèbre binaire et Circuits logiques ( )

2.4 Représentation graphique, tableau de Karnaugh

Jeudi 19 Juin 2014 Novotel Paris Bercy

Fonction inverse Fonctions homographiques

Olivier Mondet

Université de Nice Sophia-Antipolis. Langage SQL. version 5.7 du polycopié. Richard Grin

Java et les bases de données

Groupe 11 TABLE DES MATIERES

Le Langage De Description De Données(LDD)

TD n 10 : Ma première Base de Données

Cours SQL. Base du langage SQL et des bases de données

CREATION D UNE EVALUATION AVEC JADE par Patrick RUER (

Fonctions de plusieurs variables

Bases de données Oracle Virtual Private Database (VPD) pour la gestion des utilisateurs d applications

Systèmes de Gestion de Bases de Données

Nombre dérivé et tangente

TD 1 - Transmission en bande de passe

Exercice 6 Associer chaque expression de gauche à sa forme réduite (à droite) :

Compte-rendu de projet de Système de gestion de base de données

Créer le schéma relationnel d une base de données ACCESS

Exercices Alternatifs. Une fonction continue mais dérivable nulle part

Exercices Alternatifs. Une fonction continue mais dérivable nulle part

Station défibrillateur réf. SDSA1A et SDSA1AF : notice d emploi de l alarme

Transcription:

Cours de Base de Données Cours n.3 Algèbre relationnelle Ce cours reprend beaucoup de transparents du cours de Philippe LAHIRE Elisabetta De Maria - edemaria@i3s.unice.fr UFR Sciences et Laboratoire I3S, CNRS 2016-2017 Université de Nice Sophia-Antipolis

Algèbre relationnelle Langage procédural : indique comment construire une nouvelle relation à partir d une ou plusieurs relations existantes Langage abstrait, avec des opérations qui travaillent sur une (ou plusieurs) relation(s) pour définir une nouvelle relation sans changer la (ou les) relation(s) originale(s) le résultat de toute opération est une relation (propriété de fermeture)

Les opérations de l algèbre relationnelle Les cinq opérations fondamentales sélection projection produit cartésien union différence Autres opérations jointure intersection division...

Opérateurs ensemblistes union intersection difference produit Opérateurs algébriques Opérateurs relationnels spécifiques sélection projection jointure division

Tables d exemple CLIENT(numéro, nom, adresse, téléphone) PRODUIT (référence, marque, prix) VENTE(numéro, ref produit#, no client#, date) Client numéro nom adresse téléphone 101 Durand Nice 0493939393 106 Fabre Paris NULL 110 Prosper Paris NULL 125 Antonin Marseille 0491919191 Produit Vente référence marque prix numéro ref_produit# no_client# date 153 BMW 8 000 102 153 101 12/10/2004 589 Peugeot 7 450 809 589 108 20/01/2005 158 Toyota 6 725 11005 158 108 15/03/2005 589 Citroën 7 000 12005 589 125 30/03/2005

Opérations unaires Soit R(a 1, a 2,..., a N ) une relation. Sélection : σ predicat (R) La sélection travaille sur R et définit une relation qui ne contient que les tuples de R qui satisfont à la condition (ou prédicat) spécifiée. Projection : π a1,...,a n (R) La projection travaille sur R et définit une relation restreinte à un sous-ensemble des attributs de R, en extrayant les valeurs des attributs spécifiés et en supprimant les doublons.

Opérations ensemblistes (1) Soient R(a 1,..., a N ) et S(b 1,..., b M ) deux relations. Union : R S L union de deux relations R et S définit une relation qui contient tous les tuples de R, de S ou à la fois de R et S, les tuples en double étant éliminés. Différence d ensembles : R S La différence d ensemble définit une relation qui comporte les tuples qui existent dans la relation R et non dans la relation S. Intersection : R S L intersection définit une relation constituée de l ensemble de tous les tuples présents à la fois dans R et dans S. Relations compatibles envers l union

Opérations ensemblistes (2) Produit cartésien : R S Le produit cartésien définit une relation constituée de la concatenation de tous les tuples de la relation R avec tous ceux de la relation S Relations de schemas quelconques

Opérations de jointure Jointure thêta (θ-join) : R P S La thêta-jointure définit une relation qui contient les tuples qui satisfont le prédicat P du produit cartésien de R et S. Le prédicat P est de la forme R.a i θs.b j où θ est l un des opérateurs de comparaison (<,,>,,=, ). Si le prédicat P est l égalité (=), on parle d équijointure Jointure naturelle : R S La jointure naturelle est une équijointure des relations R et S sur tous les attributs communs en retirant les occurrences multiples d attributs.

Opération de division Supposons que la relation R soit définie sur l ensemble d attributs A et que la relation S soit définie sur l ensemble d attributs B, de telle sorte que B A. Soit C = A B. Division R S La division définit une relation sur les attributs C, constutuée de l ensemble des tuples de R qui correspondent à la combinaison de tous les tuples de S. T 1 = π C (R) T 2 = π C ((S T 1 ) R) T = T 1 T 2

Autres jointures Jointure externe (gauche) entre R et S La jointure externe gauche est une jointure dans laquelle les tuples de la relation R qui n ont pas nécessairement de valeur correspondente dans S parmi les attributs communs de R et S, sont également inclus dans la relation résultante. Les valeurs manquantes dans la seconde relation sont mises à nul. Jointure externe droite : le résultat conserve tous les tuples de la relation de droite Jointure externe complete : le résultat reprend tous les tuples de deux relations et remplit de nuls les attributs absents pour tous les cas de non-correspondence Semi-jointure entre R et S La semi-jointure définit une relation qui contient les tuples de R qui participent à la jointure de R avec S.

Fonctions des opérateurs