Bases de données. Licence Pro QSSI. patrick.marcel@univ-tours.fr http://www.info.univ-tours.fr/ marcel



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

INSTITUT NATIONAL DES TELECOMMUNICATIONS CONTROLE DES CONNAISSANCES. 2. Les questions sont indépendantes les unes des autres.

Le langage SQL Rappels

1 Introduction et installation

TD : Requêtes SQL (BDR.TD2-1) INSA 3IF

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

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

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

Langage SQL : créer et interroger une base

SQL Historique

Systèmes de Gestion de Bases de Données

Cours 4 : Agrégats et GROUP BY

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

Les bases de données

Bases de données - Modèle relationnel

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

1. Qu'est-ce que SQL? La maintenance des bases de données Les manipulations des bases de données... 5

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

TP Bases de données réparties

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

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

16H Cours / 18H TD / 20H TP

Bases de données relationnelles

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

INTRODUCTION AU DATA MINING

Le Langage SQL version Oracle

SQL sous SqlServer OLIVIER D. DEHECQ Olivier 0

MySQL / SQL EXEMPLES

A.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW

Vincent Augusto

INTRODUCTION : Données structurées et accès simplifié

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

Bases de données. PTSI Lycée Eiffel. 28 février 2014

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

clef primaire ; clef étrangère ; projection ; restriction ; jointure ; SQL ; SELECT ; FROM ; WHERE

TP Contraintes - Triggers

Introduction aux Bases de Données 2004/2005

Le Langage De Description De Données(LDD)

Les Entrepôts de Données

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

Exploiter les statistiques d utilisation de SQL Server 2008 R2 Reporting Services

Quelques aspects du Relationnel-Objet du SGBD Oracle

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

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

Le langage SQL pour Oracle - partie 1 : SQL comme LDD

Chapitre VIII. Les bases de données. Orientées Objet. Motivation

UNIVERSITE DE CONSTANTINE 1 FACULTE DES SIENCES DE LA TECHNOLOGIE DEPARTEMENT D ELECTRONIQUE 3 ème année LMD ELECTRONIQUE MEDICALE

Oracle Décisionnel : Modèle OLAP et Vue matérialisée D BILEK

MODE OPERATOIRE OPENOFFICE BASE

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

Optimisation SQL. Quelques règles de bases

CREATION WEB DYNAMIQUE

Partie 0 : Gestion des tablespace et des utilisateurs... 3

Cours 3. Développement d une application BD. DBA - Maîtrise ASR - Université Evry

Bases de données avancées Introduction

Fournir un accès rapide à nos données : agréger au préalable nos données permet de faire nos requêtes beaucoup plus rapidement

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

Administration des bases de données. Jean-Yves Antoine

Année Universitaire 2009/2010 Session 2 de Printemps

BIRT (Business Intelligence and Reporting Tools)

Objectifs du TP : Initiation à Access

FileMaker 13. Guide de référence SQL

Bases de données cours 1

OLAP : Mondrian + Pentaho. Maguelonne Teisseire Hugo Alatrista Salas hugo.alatrista- salas@teledetec9on.fr Flavien Bouillot

Business Intelligence avec Excel, Power BI et Office 365

Intégrité des données

Bases de données Cours 4 : Le langage SQL pour ORACLE

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste

LE LANGAGE SQL2 1. INTRODUCTION

Initiation à SQL. Le langage de communication avec une base de données relationnelles. Application avec PostgreSQL. Nathalie Camelin 2011/2012

Bases de données multidimensionnelles et mise en œuvre dans Oracle

ÉTUDE DE CAS. Durée : 5 heures Coefficient : 5 CAS FEFORT ÉLÉMENTS DE CORRECTION

BD51 BUSINESS INTELLIGENCE & DATA WAREHOUSE

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

Utilisation du BDE pour la maintenance des fichiers DBF de l'application TopoCad:

Cours: Les Jointures 1

IT203 : Systèmes de gestion de bases de données. A. Zemmari zemmari@labri.fr

A QUOI SERVENT LES BASES DE DONNÉES?

BTS/CGO P10 SYSTEME INFORMATION Année

OpenPaaS Le réseau social d'entreprise

Mejdi BLAGHGI & Anis ASSÈS

Le langage SQL (première partie) c Olivier Caron

Chapitre 11 Bases de données

I4 : Bases de Données

1/ Présentation de SQL Server :

Évaluation et optimisation de requêtes

GUIDE PRATIQUE déplacements professionnels temporaires en France et à l étranger

Devoir Data WareHouse

TP 8: LES OPERATEURS ENSEMBLISTES

Gestion de base de données

Hala Skaf-Molli. Nancy-Université 14 mai 2007

SQL Server et Active Directory

Interpréteur d algèbre relationnelle

Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS

ISC Système d Information Architecture et Administration d un SGBD Compléments SQL

Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées

Transcription:

Bases de données Licence Pro QSSI patrick.marcel@univ-tours.fr http://www.info.univ-tours.fr/ marcel

contexte nous avons vu comment exprimer des requêtes simples nous avons vu des requêtes que nous ne pouvons pas exprimer nous allons donc enrichir nos langages

plan 1. quel est le problème? 2. de quels nouveaux opérateurs a-t-on besoin? 2.1 union 2.2 différence 2.3 agrégation 3. quels sont les langages d interrogation? 3.1 l algèbre relationnelle, pour les TD 3.2 SQL (deuxième partie), pour les TP

quel est le problème? exemple de requêtes non exprimables avec l algèbre conjonctive 1. union quels sont les films réalisés par lynch ou ki-duk? 2. négation quels sont les films qui ne sont pas réalisés par besson? 3. agrégation quel est le nombre de films de chaque nationalité?

de quels nouveaux opérateurs a-t-on besoin? l union l union : que veut-on exprimer? quels sont les films réalisés par lynch ou ki-duk? que faut-il faire? trouver l ensemble des films réalisés par lynch trouver l ensemble des films réalisés par ki-duk calculer l union ensembliste attention : les schémas doivent être compatibles!

de quels nouveaux opérateurs a-t-on besoin? l union exemples quels sont les films réalisés par lynch ou ki-duk? en algèbre, on aimerait écrire : π titre (σ réalisateur= lynch (films) σ réalisateur= ki duk (films)) ou encore π titre (σ réalisateur= lynch réalisateur= ki duk (films))

de quels nouveaux opérateurs a-t-on besoin? l union définition algébrique soit une relation R de schéma R[A 1,...,A n ] soit une relation S de schéma S[A 1,...,A n ] R S calcule une relation T de schéma T [A 1,...,A n ] contenant à la fois l ensemble des tuples de la relation R et l ensemble des tuples de la relation S la sélection est généralisée aux formules disjonctives

de quels nouveaux opérateurs a-t-on besoin? la différence la différence : que veut-on exprimer? quels sont les films qui ne sont pas réalisés par besson? trouver l ensemble des films trouver parmi ces films ceux qui sont réalisés par besson calculer la différence ensembliste des deux ensembles attention : les schémas doivent être compatibles!

de quels nouveaux opérateurs a-t-on besoin? la différence exemple quels sont les films qui ne sont pas réalisés par besson? π titre (films σ réalisateur= besson (films)) ou π titre (σ réalisateur besson (films))

de quels nouveaux opérateurs a-t-on besoin? la différence définition soit une relation R de schéma R[A 1,...,A n ] soit une relation S de schéma S[A 1,...,A n ] R S calcule une relation T de schéma T [A 1,...,A n ] contenant l ensemble des tuples de la relation R qui n appartiennent pas à la relation S

de quels nouveaux opérateurs a-t-on besoin? la différence que peut-on calculer avec la négation? exemple d utilisation de deux négations : quels sont les spectateurs qui ne sont pas les spectateurs pour lesquels il existe un film qu il n ont pas vu? ce sont donc les spectateurs qui ont vu tous les films plus d exemples en TD...

de quels nouveaux opérateurs a-t-on besoin? l agrégation l agrégation : que veut-on exprimer? comment exprimer : quel est le nombre de films de chaque nationalité? quels sont les réalisateurs ayant faits plus de 2 films par an? on a besoin : de comparateurs comme,,... de fonction d agrégat permettant de compter (count), d ajouter (sum),...

de quels nouveaux opérateurs a-t-on besoin? l agrégation intérêt quel est le nombre de films de chaque nationalité? considérons π titre,nationalité (films réalisateur=nom réalisateurs) titre starwars dune nikita locataires nationalité américaine américaine française coréenne il faut : 1. grouper les films par nationalité 2. pour chaque groupe, compter les films

de quels nouveaux opérateurs a-t-on besoin? l agrégation définition une fonction d agrégat f est une fonction dont l ensemble de départ est un ensemble de valeurs d attribut dont l ensemble d arrivée est N

de quels nouveaux opérateurs a-t-on besoin? l agrégation exemple la fonction d agrégat sum est une fonction calculant la somme d un ensemble de valeurs numériques soit R de schéma R[A,B] et d instance {(1,2),(2,3),(3,3),(5,2)} sum A (R) = 11 sum B (R) = 10

de quels nouveaux opérateurs a-t-on besoin? l agrégation algèbre l opérateur de projection est étendu comme suit soit une relation R de schéma R[A 1,...,A n ] X 1,...,X m,y des attributs pris parmi A 1,...,A n soit f une fonction d agrégation π X1,...,X m;f Y (R) calcule une relation T de schéma T [X 1,...,X m,f Y ] telle que f est appliquée séparément sur chaque groupe de tuples de R correspondant à une valeur des attributs X 1,...,X m

de quels nouveaux opérateurs a-t-on besoin? l agrégation exemple quel est le nombre de films de chaque nationalité? π nationalité;counttitre (films réalisateur=nom réalisateurs) nationalité américaine 2 française 1 coréenne 1

de quels nouveaux opérateurs a-t-on besoin? l agrégation exemple quels sont les réalisateurs ayant fait plus de 2 films par an? π réalisateur (films) π réalisateur (σ counttitre < 2 (π réalisateur,année;counttitre (films)))

quels sont les langages d interrogation? l algèbre relationnelle l algèbre relationnelle (TD) l algèbre conjonctive (SPCR) avec les opération d union et de différence s appelle l algèbre relationnelle l algèbre relationnelle étendue avec l opérateur d agrégation s appelle algèbre relationnelle étendue avec l agrégation

quels sont les langages d interrogation? SQL SQL : opérateurs ensemblistes union, intersection, différence : SELECT realisateur FROM films UNION SELECT acteur FROM films; SELECT realisateur FROM films MINUS SELECT acteur FROM films; SELECT realisateur FROM films INTERSECT SELECT acteur FROM films;

quels sont les langages d interrogation? SQL opérations ensemblistes union : utilisation du OR dans le WHERE intersection, différence : avec les opérateurs ensemblistes ou avec les IN, NOT IN dans le WHERE pour des requêtes imbriquées

quels sont les langages d interrogation? SQL union SELECT spectateur FROM vu WHERE titre = 2001 OR titre = 2046 ;

quels sont les langages d interrogation? SQL intersection SELECT realisateur FROM films WHERE realisateur IN (SELECT producteur FROM produit);

quels sont les langages d interrogation? SQL différence SELECT spectateur FROM vu WHERE spectateur NOT IN (SELECT spectateur FROM aime);

quels sont les langages d interrogation? SQL division quel spectateur a vu tous les films? SELECT DISTINCT spectateur FROM vu WHERE spectateur NOT IN (SELECT spectateur FROM vu,films WHERE (spectateur,films.titre) NOT IN (SELECT spectateur,titre FROM vu));

quels sont les langages d interrogation? SQL agrégation ALTER TABLE films ADD COLUMN budget integer(8); SELECT realisateur, avg(budget) FROM films GROUP BY realisateur; de nombreuses fonctions d agrégation sont disponibles : avg, count, sum,...

quels sont les langages d interrogation? SQL having SELECT realisateur, avg(budget) AS budget moyen FROM films GROUP BY realisateur HAVING budget moyen > 1000000;

quels sont les langages d interrogation? SQL order by SELECT realisateur, avg(budget) AS budget moyen FROM films GROUP BY realisateur HAVING budget moyen > 1000000 ORDER BY budget moyen DESC;

quels sont les langages d interrogation? SQL vues une vue est une table temporaire définie par une requête accessible comme toute autre table

quels sont les langages d interrogation? SQL vues CREATE VIEW salle film non lucas AS SELECT nom FROM salle, films WHERE salle.titre = films.titre AND realisateur!= lucas ;

quels sont les langages d interrogation? SQL vues exemple : quels sont les salles qui ne proposent que des films de lucas? SELECT nom FROM salle WHERE nom NOT IN (SELECT * FROM salle film non lucas);