La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

INTRODUCTION AUX BASES DE DONNEES SQL -2

Présentations similaires


Présentation au sujet: "INTRODUCTION AUX BASES DE DONNEES SQL -2"— Transcription de la présentation:

1 INTRODUCTION AUX BASES DE DONNEES SQL -2
COURS 2 Université Panthéon-Assas Paris 2 L2 Economie-Gestion

2 Les fonctions ensemblistes MAX
MAX fournit la valeur maximale d ’un attribut Capacité maximale des avions allant à Madrid

3 vol numvol depart arrivee numav numpil jdep hdep jarr harr V0001 V0002
Paris Londres Berlin Bruxelles New York San Francisco Moscou Madrid Rome Amsterdam A0001 A0003 A0002 A0004 A0006 A0005 P0002 P0001 P0003 P0006 P0005 15/05/99 16/05/99 17/05/99 10:00 10:30 11:15 06:20 14:30 18:00 03:00 09:30 17:00 15:10 20:00 21:30

4 avion numavion type cap A0001 A0002 A0003 A0004 A0005 A0006 Boeing 747
Airbus 320 Airbus 300 Boeing 737 DC 10 420 300 280 250 120 410

5 Les fonctions ensemblistes MAX
Capacité maximale des avions allant à Madrid SELECT MAX(avion.cap) FROM avion, vol WHERE vol.numav=avion.numavion AND vol.arrivee=‘ Madrid ’ ; max(cap) 300

6 Les fonctions ensemblistes MIN
MIN fournit la valeur minimale d ’un attribut Heure de départ du 1er vol du 15/5/99

7 vol numvol depart arrivee numav numpil jdep hdep jarr harr V0001 V0002
Paris Londres Berlin Bruxelles New York San Francisco Moscou Madrid Rome Amsterdam A0001 A0003 A0002 A0004 A0006 A0005 P0002 P0001 P0003 P0006 P0005 15/05/99 16/05/99 17/05/99 10:00 10:30 11:15 06:20 14:30 18:00 03:00 09:30 17:00 15:10 20:00 21:30

8 Les fonctions ensemblistes MIN
Heure de départ du 1er vol du 15/5/99 SELECT MIN(vol.hdep) FROM vol WHERE vol.jdep={d ’  ’}; min(hdep) 10:00

9 Les fonctions ensemblistes COUNT
COUNT permet de compter le nombre d ’occurrences Nombre d ’avions au départ de Paris

10 vol numvol depart arrivee numav numpil jdep hdep jarr harr V0001 V0002
Paris Londres Berlin Bruxelles New York San Francisco Moscou Madrid Rome Amsterdam A0001 A0003 A0002 A0004 A0006 A0005 P0002 P0001 P0003 P0006 P0005 15/05/99 16/05/99 17/05/99 10:00 10:30 11:15 06:20 14:30 18:00 03:00 09:30 17:00 15:10 20:00 21:30

11 Les fonctions ensemblistes COUNT
COUNT permet de compter le nombre d ’occurrences Nombre d ’avions au départ de Paris SELECT COUNT(vol.depart) FROM vol WHERE vol.depart=‘ Paris ’ ; nombre(depart) 2

12 Les fonctions ensemblistes SUM
SUM permet d ’additionner des attributs Capacité totale des avions au départ de Paris

13 avion numavion type cap A0001 A0002 A0003 A0004 A0005 A0006 Boeing 747
Airbus 320 Airbus 300 Boeing 737 DC 10 420 300 280 250 120 410

14 vol numvol depart arrivee numav numpil jdep hdep jarr harr V0001 V0002
Paris Londres Berlin Bruxelles New York San Francisco Moscou Madrid Rome Amsterdam A0001 A0003 A0002 A0004 A0006 A0005 P0002 P0001 P0003 P0006 P0005 15/05/99 16/05/99 17/05/99 10:00 10:30 11:15 06:20 14:30 18:00 03:00 09:30 17:00 15:10 20:00 21:30

15 Les fonctions ensemblistes SUM
Capacité totale des avions au départ de Paris SELECT SUM(avion.cap) FROM avion, vol WHERE vol.numav=avion.numavion AND vol.depart=‘ Paris ’; somme(cap) 840

16 Les fonctions ensemblistes AVG
AVG permet de calculer des moyennes d ’attributs Moyenne des capacités des avions à destination d ’Amsterdam

17 avion numavion type cap A0001 A0002 A0003 A0004 A0005 A0006 Boeing 747
Airbus 320 Airbus 300 Boeing 737 DC 10 420 300 280 250 120 410

18 vol numvol depart arrivee numav numpil jdep hdep jarr harr V0001 V0002
Paris Londres Berlin Bruxelles New York San Francisco Moscou Madrid Rome Amsterdam A0001 A0003 A0002 A0004 A0006 A0005 P0002 P0001 P0003 P0006 P0005 15/05/99 16/05/99 17/05/99 10:00 10:30 11:15 06:20 14:30 18:00 03:00 09:30 17:00 15:10 20:00 21:30

19 Les fonctions ensemblistes AVG
Moyenne des capacités des avions à destination d ’Amsterdam SELECT AVG(avion.cap) FROM avion, vol WHERE vol.numav=avion.numavion AND vol.arrivee=‘ Amsterdam ’; moyenne(cap) 120

20 Les fonctions ensemblistes VAR
VAR permet de calculer des variances d ’attributs

21 Autres fonctions DISTINCT
DISTINCT permet de n ’obtenir qu’une seule fois chaque occurrence Type d ’avions

22 avion numavion type cap A0001 A0002 A0003 A0004 A0005 A0006 Boeing 747
Airbus 320 Airbus 300 Boeing 737 DC 10 420 300 280 250 120 410

23 Autres fonctions DISTINCT
DISTINCT permet de n ’obtenir qu’une seule fois chaque occurrence Type d ’avions type Airbus 300 Airbus 320 Boeing 737 Boeing 747 DC 10 SELECT DISTINCT(avion.type) FROM avion

24 Autres fonctions ORDER BY
ORDER BY permet d ’ordonner par ordre croissant ou décroissant (DESC) Type et capacité des avions par type croissant (ordre alphabétique)

25 avion numavion type cap A0001 A0002 A0003 A0004 A0005 A0006 Boeing 747
Airbus 320 Airbus 300 Boeing 737 DC 10 420 300 280 250 120 410

26 Autres fonctions ORDER BY
ORDER BY permet d ’ordonner par ordre croissant ou décroissant (DESC) Type et capacité des avions par type croissant (ordre alphabétique) type cap Airbus 300 Airbus 320 Boeing 737 Boeing 747 DC 10 280 300 250 420 410 120 SELECT DISTINCT avion.type,avion.cap FROM avion ORDER BY avion.type;

27 Autres fonctions ORDER BY
Pilotes par ordre alphabétique décroissant

28 pilote numpilote nom prenom P0001 P0002 P0003 P0004 P0005 P0006 Dupuis
Simon François André Arthur Mathieu Antoine Georges Luc Louis

29 Autres fonctions ORDER BY
Pilotes par ordre alphabétique décroissant nom Simon Mathieu François Dupuis Arthur André SELECT pilote.nom FROM pilote ORDER BY pilote.nom DESC;

30 Autres fonctions GROUP BY
GROUP BY permet de faire des regroupements Somme des capacités des avions, groupés par ville de départ

31 avion numavion type cap A0001 A0002 A0003 A0004 A0005 A0006 Boeing 747
Airbus 320 Airbus 300 Boeing 737 DC 10 420 300 280 250 120 410

32 vol numvol depart arrivee numav numpil jdep hdep jarr harr V0001 V0002
Paris Londres Berlin Bruxelles New York San Francisco Moscou Madrid Rome Amsterdam A0001 A0003 A0002 A0004 A0006 A0005 P0002 P0001 P0003 P0006 P0005 15/05/99 16/05/99 17/05/99 10:00 10:30 11:15 06:20 14:30 18:00 03:00 09:30 17:00 15:10 20:00 21:30

33 Autres fonctions GROUP BY
GROUP BY permet de faire des regroupements Somme des capacités des avions, groupés par ville de départ depart Somme(cap) Berlin Bruxelles Londres New York Paris 420 410 530 840 SELECT vol.depart, SUM(avion.cap) FROM avion, vol WHERE avion.numavion=vol.numav GROUP BY vol.depart;

34 Autres fonctions GROUP BY
GROUP BY est souvent utilisé avec la clause HAVING qui permet de spécifier des caractéristiques du groupement Somme des capacités des avions, groupés par ville de départ telle que le 1er vol soit après 9:00

35 vol numvol depart arrivee numav numpil jdep hdep jarr harr V0001 V0002
Paris Londres Berlin Bruxelles New York San Francisco Moscou Madrid Rome Amsterdam A0001 A0003 A0002 A0004 A0006 A0005 P0002 P0001 P0003 P0006 P0005 15/05/99 16/05/99 17/05/99 10:00 10:30 11:15 06:20 14:30 18:00 03:00 09:30 17:00 15:10 20:00 21:30

36 avion numavion type cap A0001 A0002 A0003 A0004 A0005 A0006 Boeing 747
Airbus 320 Airbus 300 Boeing 737 DC 10 420 300 280 250 120 410

37 Autres fonctions GROUP BY
depart Somme(cap) Berlin Bruxelles Paris 420 410 840 Autres fonctions GROUP BY Somme des capacités des avions, groupés par ville de départ telle que le 1er vol soit après 9:00 SELECT vol.depart, SUM(avion.cap) FROM vol, avion WHERE vol.numav=avion.numavion GROUP BY vol.depart HAVING (MIN(vol.hdep)>’09:00’);

38 Autres fonctions BETWEEN
BETWEEN a AND b permet de tester l’appartenance à un intervalle Départ et arrivée des vols partant entre 10h et 14h30

39 Vol numvol depart arrivee numav numpil jdep hdep jarr harr V0001 V0002
Paris Londres Berlin Bruxelles New York San Francisco Moscou Madrid Rome Amsterdam A0001 A0003 A0002 A0004 A0006 A0005 P0002 P0001 P0003 P0006 P0005 15/05/99 16/05/99 17/05/99 10:00 10:30 11:15 06:20 14:30 18:00 03:00 09:30 17:00 15:10 20:00 21:30

40 Autres fonctions BETWEEN
depart arrivee Berlin Bruxelles Londres Paris Amsterdam Madrid Rome Moscou San Francisco Autres fonctions BETWEEN BETWEEN a AND b permet de tester l’appartenance à un intervalle Départ et arrivée des vols partant entre 10h et 14h30 SELECT DISTINCT vol.depart, vol.arrivee FROM vol WHERE vol.hdep BETWEEN ’10:00’ AND ’14:30’;

41 Autres fonctions LIKE LIKE permet d’utiliser des jokers dans des chaînes de caractères Le joker _ représente un unique caractère Le joker % représente une chaîne de caractères de longueur quelconque

42 Autres fonctions LIKE Numéro des vols dont le nom du pilote a pour 2ème lettre la lettre « r »

43 vol numvol depart arrivee numav numpil jdep hdep jarr harr V0001 V0002
Paris Londres Berlin Bruxelles New York San Francisco Moscou Madrid Rome Amsterdam A0001 A0003 A0002 A0004 A0006 A0005 P0002 P0001 P0003 P0006 P0005 15/05/99 16/05/99 17/05/99 10:00 10:30 11:15 06:20 14:30 18:00 03:00 09:30 17:00 15:10 20:00 21:30

44 pilote numpilote nom prenom P0001 P0002 P0003 P0004 P0005 P0006 Dupuis
Simon François André Arthur Mathieu Antoine Georges Luc Louis

45 Autres fonctions LIKE Numéro des vols dont le nom du pilote a pour 2ème lettre la lettre « r » SELECT vol.numvol numvol V0003 V0005 V0008 FROM vol, pilote WHERE vol.numpil=pilote.numpilote AND (pilote.nom LIKE ‘_r%’);

46 Autres fonctions LIKE Somme des capacités des avions, groupés par ville de départ telle que l’heure du 1er vol soit comprise entre 10:00 et 11:00 (11:00 non compris)

47 vol numvol depart arrivee numav numpil jdep hdep jarr harr V0001 V0002
Paris Londres Berlin Bruxelles New York San Francisco Moscou Madrid Rome Amsterdam A0001 A0003 A0002 A0004 A0006 A0005 P0002 P0001 P0003 P0006 P0005 15/05/99 16/05/99 17/05/99 10:00 10:30 11:15 06:20 14:30 18:00 03:00 09:30 17:00 15:10 20:00 21:30

48 avion numavion type cap A0001 A0002 A0003 A0004 A0005 A0006 Boeing 747
Airbus 320 Airbus 300 Boeing 737 DC 10 420 300 280 250 120 410

49 depart Somme(cap) Bruxelles Paris 410 840 Autres fonctions LIKE Somme des capacités des avions, groupés par ville de départ telle que l’heure du 1er vol soit comprise entre 10:00 et 11:00 (11:00 non compris) SELECT vol.depart, SUM(avion.cap) FROM vol, avion WHERE vol.numav=avion.numavion GROUP BY vol.depart HAVING MIN(vol.hdep) LIKE ’10:%’;

50 Autres fonctions IS NULL IS NOT NULL
IS NULL et IS NOT NULL permettent de vérifier si l’attribut est renseigné ou pas Numéros des vols auxquels sont affectés des pilotes

51 vol numvol depart arrivee numav numpil jdep hdep jarr harr V0001 V0002
Paris Londres Berlin Bruxelles New York San Francisco Moscou Madrid Rome Amsterdam A0001 A0003 A0002 A0004 A0006 A0005 P0002 P0001 P0003 P0006 P0005 15/05/99 16/05/99 17/05/99 10:00 10:30 11:15 06:20 14:30 18:00 03:00 09:30 17:00 15:10 20:00 21:30

52 Autres fonctions IS NULL IS NOT NULL
IS NULL et IS NOT NULL permettent de vérifier si l’attribut est renseigné ou pas Numéros des vols auxquels sont affectés des pilotes numvol V0001 V0002 V0003 V0004 V0005 V0006 V0007 V0008 SELECT vol.numvol FROM vol WHERE vol.numpil IS NOT NULL;

53 AND (vol.JDEP=vol0006.JDEP) AND (vol.NUMPIL<>'P0006');
Code des pilotes pilotant un avion décollant le même jour que le pilote ’P0006’ SELECT vol.NUMPIL FROM vol, vol vol0006 WHERE (vol0006.NUMPIL='P0006') AND (vol.JDEP=vol0006.JDEP) AND (vol.NUMPIL<>'P0006'); NUMPIL P0002 P0001 P0005

54 Nom des pilotes pilotant le même type d’avion que le pilote Simon nom
SELECT DISTINCT pilote.NOM FROM avion avion, avion avionsimon, pilote pilote, pilote pilotesimon, vol vol, vol volsimon WHERE pilote.NUMPILOTE = vol.NUMPIL AND vol.NUMAV = avion.NUMAVION AND avion.TYPE = avionsimon.TYPE AND pilotesimon.NUMPILOTE = volsimon.NUMPIL AND volsimon.NUMAV = avionsimon.NUMAVION AND pilotesimon.NOM='Simon' AND pilote.NOM<>'Simon'; nom Arthur François

55 Nom des pilotes pilotant le même type d’avion que le pilote Simon
SELECT pilote.NOM FROM avion, pilote, vol WHERE pilote.NUMPILOTE = vol.NUMPIL AND vol.NUMAV = avion.NUMAVION AND avion.TYPE = (SELECT DISTINCT avion.TYPE FROM avion , pilote , vol WHERE pilote.NUMPILOTE = vol.NUMPIL AND vol.NUMAV = avion.NUMAVION AND pilote.NOM='Simon') AND pilote.NOM<>'Simon'; nom Arthur François

56 NUMVOL ARRIVEE HDEP V0008 Paris 03:00 Code, destination des avions décollant le plus tôt et heure de décollage SELECT vol.NUMVOL, vol.ARRIVEE, vol.HDEP FROM vol WHERE vol.HDEP= (SELECT MIN(vol.HDEP) FROM vol );

57 Code, destination des avions décollant le plus tôt et heure de décollage
SELECT vol.NUMVOL, vol.ARRIVEE, vol.HDEP FROM vol, vol volmin GROUP BY vol.NUMVOL, vol.ARRIVEE,vol.HDEP HAVING vol.HDEP=MIN(volmin.HDEP);


Télécharger ppt "INTRODUCTION AUX BASES DE DONNEES SQL -2"

Présentations similaires


Annonces Google