SlideShare une entreprise Scribd logo
SQL
La commande
select
2017-2018
 L’utilisation la plus courante de SQL consiste a lire des
données issues de la base de données. Cela s’effectue grâce a
la commande SELECT, qui retourne des enregistrements dans
un tableau de résultat. Cette commande peut sélectionner
une ou plusieurs colonnes d’une table.
Introduction
2
SELECT * FROM table
WHERE condition
GROUP BY expression
HAVING condition
{ UNION | INTERSECT | EXCEPT }
ORDER BY expression
LIMIT count
Nous nous proposons d’avoir la base de données
«Personne» qui contient la table «Utilisateur » cette table
contient des informations sur des utilisateurs possédant un
compte dans un site de commerce.
Table Utilisateur
3
On a aussi la table commande qui contient les
informations sur les commandes passés par les utilisateurs.
Table Commande
4
SQL SELECT
Il existe plusieurs commandes qui permettent de mieux
gérer les données que l’ont souhaite lire. Voici un petit aperçu des
quelques fonctionnalités :
 Joindre un autre tableau aux résultats
 Filtrer pour ne sélectionner que certains enregistrements
 Classer les résultats
 Grouper les résultats pour faire uniquement des statistiques
5
Expression des
projections
Expression de projection
La projection d’une table en vue de l’obtention d’un
ensemble de colonnes de cette table se fait simplement en
spécifiant les noms des colonnes désirées.
7
Syntaxe:
SELECT ma_colonne FROM nom_du_tableau
Si l’ont veut avoir la liste de toutes les villes des utilisateurs, il
suffit d’effectuer la requête suivante :
SELECT ville FROM utilisateur
Exemple: Obtenir une seule colonne
8
SQL DISTINCT
Pour éviter des redondances dans les résultats il faut
simplement ajouter DISTINCT après le mot SELECT.
Syntaxe:
SELECT DISTINCT ma_colonne FROM nom_du_tableau
9
Permet d’attribuer un autre nom a une table dans
une requête SQL. Cela peut aider à avoir des noms plus
courts, plus simples et plus facilement compréhensibles.
Alias sur une colonne:
SELECT colonne1 AS c1, colonne2 AS c2 FROM `table`
Alias sur une table:
SELECT * FROM `nom_table` AS t1
Alias sur une table ou colonne
10
Expression des
restrictions
“
Expression des restrictions
La restriction se fait à travers la commande WHERE
qui permet d’extraire les lignes d’une base de données qui
respectent une condition. Cela permet d’obtenir uniquement
les informations désirées.
Syntaxe :
SELECT nom_colonnes FROM nom_table WHERE condition
12
“
Exemple : Expression des restrictions
 Pour obtenir seulement la liste des clients qui habitent a
Paris, il faut effectuer la requête suivante :
SELECT * FROM utilisateur WHERE ville = 'paris‘
13
“
Opérateurs de comparaisons
 Il existe plusieurs operateurs de comparaisons. La liste
ci-jointe présente quelques uns des operateurs les plus
couramment utilisés.
Opérateur Description
= Egale
<>,!= Pas égale
< , > , >= , <= Inférieur , supérieur, supérieur ou égale, inférieur ou égal
IN Liste de plusieurs valeurs possibles
BETWEEN Valeur comprise dans un intervalle donnée (utile pour les
nombres ou dates)
LIKE Recherche en spécifiant le début, milieu ou fin d'un mot.
IS NULL , IS NOT NULL Valeur est nulle , Valeur n'est pas nulle
14
“
Exemple : Expression des restrictions
« NOT BETWEEN »
 Filtrer entre 2 entiers :
Si l’ont souhaite obtenir tous les résultats dont l’identifiant n’est
pas situe entre 4 et 10, il faudra alors utiliser la requête suivante :
SELECT * FROM utilisateur WHERE id NOT BETWEEN 4 AND 10
15
“
Exemple : Expression des restrictions « LIKE »
Si on souhaite obtenir la liste des utilisateurs dont leurs prénoms
contiennent exactement n’importe quelles deux lettres au début
suivit par ‘me’.
SELECT * FROM utilisateur WHERE prénom LIKE ‘__me%’
16
“
Tri et présentation des résultats
SQL permet de trier les tuples obtenus par la requête
selon différents critères grâce à la clause ORDER BY. Les mots
clés ASC et DESC permettent de préciser si le tri est croissant ou
décroissant .
Syntaxe :
La syntaxe a utiliser pour utiliser l’operateur Order by est la
suivante :
SELECT * FROM table order by nom_colonne desc|asc
17
Expression
des jointures
Expression des jointures
Les jointures en SQL permettent d’associer plusieurs
tables dans une même requête. Cela permet d’exploiter la
puissance des bases de données relationnelles pour obtenir
des résultats qui combinent les données de plusieurs tables de
manière efficace.
19
Expression des jointures
Les jointures se font en spécifiant les tables sur lesquelles la jointure sera
faite dans la liste des tables utilisées et en spécifiant la qualification de jointure
utilisée.
INNER JOIN jointure interne pour retourner les enregistrements quand la condition est vrai dans les 2
tables.
CROSS JOIN permet de joindre chaque lignes d’une table avec chaque lignes d’une seconde table.(
produit cartésien)
LEFT JOIN jointure externe pour retourner tous les enregistrements de la table de gauche même si la
condition n’est pas vérifié dans l’autre table.
FULL JOIN jointure externe pour retourner les résultats quand la condition est vrai dans au moins une
des 2 tables.
SELF JOIN permet d’effectuer une jointure d’une table avec elle-même comme si c’était une
autre table.
NATURAL JOIN jointure naturelle entre 2 tables s’il y a au moins une colonne qui porte le
même nom entre les 2 tables SQL
UNION JOIN Jointure d’union
20
Exemple : Expression des jointures
Le résultat d’une jointure naturelle est la création d’un
tableau avec autant de lignes qu’il y a de paires correspondant
à l’association des colonnes de même nom.
Syntaxe :
SELECT * FROM table1 NATURAL JOIN table2
21
Les fonctions
des statistiques
et les
regroupements
Les fonctions statistiques
 SQL offre la possibilité de récupérer des données chiffrées sur
les table ou des parties de table .
 Il est par exemple possible d’obtenir le nombre des tuples
répondant à un critère , la valeur moyenne d’une colonne , la
valeur maximale ou minimale et la somme d’une colonne .
23
Exemple : Les fonctions statistiques
Syntaxe :
La syntaxe a utiliser pour utiliser les fonctions statiques est la
suivante :
SELECT SUM(nom_champ) FROM table
24
Les Regroupements : GROUP BY
Ils est souvent intéressant de regrouper les données
d’une table en sous-tables pour y faire des opérations par
groupes . Par exemple compter les commandes par fournisseur .
Ceci se fait avec la clause GROUP BY suivie de la colonne à
partitionner .
25
Syntaxe :
SELECT * FROM table GROUP BY nom_champ
Les Regroupements : Having
La condition HAVING en SQL est presque similaire à
WHERE à la seule différence que HAVING permet de filtrer en
utilisant des fonctions telles que SUM(), COUNT(), AVG(), MIN() ou
MAX().
26
Syntaxe :
L’utilisation de HAVING s’utilise de la manière suivante :
SELECT colonne1, SUM(colonne2) FROM nom_table GROUP BY
colonne1 HAVING fonction(colonne2) operateur valeur
Exemple : Les Regroupements
27
SELECT id, SUM(prix_total) AS prix_personne FROM
commande GROUP BY id HAVING sum(prix_total) > 330;
Conclusion
29
L’obtention des données se fait exclusivement
par l’ordre SELECT, La syntaxe minimale de cet ordre
est SELECT <nom de la colonne> from <nom de la
table>, Comme on a déjà vu que ça peut être enrichie
par de très nombreuse clauses permettant notamment
d’exprimer plusieurs fonctionnalités. On peut ajouter
après WHERE une autre requête sql et cette
fonctionnalité est appelée les sous requêtes.
30
Exercice
Soit le schéma relationnel de la base de données « pilotes-avions-vols »
PILOTE (NumPilote, NomPilote, PrénomPilote, Ville, Salaire)
AVION (NumAvion, NomAvion, Capacité, Localisation)
VOL (NumVol, NumPilote, NumAvion, VilleDépart, VilleArrivé,
HeureDépart, Heurearrivé)
Exprimer les rêquetes sql suivantes :
 Caractérestiques ( NumVol, VilleDépart, VilleArrivée, HeureDépart,
HeureArrivée, NomAvion, NomPilote) du vol numéro 714
Question 1:
31
Correction question 1:
SELECT NumVol, VilleDépart, Villearrivé, HeureDépart,
HeureArrivée, NomAvion, NomPilote
From AVION a, PILOTE p, VOL v
WHERE p.NumPilote = v.NumPilote
AND a.NumAvion = v.NumAvion
AND NumVol=714;
32
QUESTION 2:
 Caractérestiques (NumAvion, NomAvion, Capacité,
Localisation) des avions localisés dans même ville
que le pilote « Ben Saleh »
33
Correction question 2:
SELECT NumAvion, NomAvion, Capacité, Localisation
From AVION a, PILOTE p
WHERE a.localisation = p.ville
AND Nompilote = ‘Ben Saleh’;
Presentation sql

Contenu connexe

Tendances (20)

Introduction au langage SQL
Introduction au langage SQLIntroduction au langage SQL
Introduction au langage SQL
Olivier Le Goaër
 
introduction au SQL et MySQL
introduction au SQL et MySQLintroduction au SQL et MySQL
introduction au SQL et MySQL
Abdoulaye Dieng
 
Bases de données réparties par la pratique
Bases de données réparties par la pratiqueBases de données réparties par la pratique
Bases de données réparties par la pratique
Abdelouahed Abdou
 
Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQL
webreaker
 
MongoDB.pptx
MongoDB.pptxMongoDB.pptx
MongoDB.pptx
boulonvert
 
Introduction aux bases de données
Introduction aux bases de donnéesIntroduction aux bases de données
Introduction aux bases de données
Abdoulaye Dieng
 
Chp2 - Diagramme des Cas d'Utilisation
Chp2 - Diagramme des Cas d'UtilisationChp2 - Diagramme des Cas d'Utilisation
Chp2 - Diagramme des Cas d'Utilisation
Lilia Sfaxi
 
Chp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionChp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de Conception
Lilia Sfaxi
 
Support programmation orientée objet c# .net version f8
Support programmation orientée objet c#  .net version f8Support programmation orientée objet c#  .net version f8
Support programmation orientée objet c# .net version f8
ENSET, Université Hassan II Casablanca
 
Les Base de Données NOSQL
Les Base de Données NOSQLLes Base de Données NOSQL
Les Base de Données NOSQL
kamar MEDDAH
 
Le langage sql
Le langage sqlLe langage sql
Le langage sql
Abderrahim Aitali
 
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliothequeEcole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Mehdi Hamime
 
Dba oracle-v1
Dba oracle-v1Dba oracle-v1
Dba oracle-v1
infcom
 
introduction à MongoDB
introduction à MongoDBintroduction à MongoDB
introduction à MongoDB
Abdoulaye Dieng
 
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Mehdi Hamime
 
Cours Base de données relationnelles
Cours Base de données relationnellesCours Base de données relationnelles
Cours Base de données relationnelles
Aymen Kasmi
 
Cours complet Base de donne Bac
Cours complet Base de donne Bac Cours complet Base de donne Bac
Cours complet Base de donne Bac
Amri Ossama
 
BigData_Chp4: NOSQL
BigData_Chp4: NOSQLBigData_Chp4: NOSQL
BigData_Chp4: NOSQL
Lilia Sfaxi
 
Cours d'introduction aux HTML5 & CSS3
Cours d'introduction aux HTML5 & CSS3Cours d'introduction aux HTML5 & CSS3
Cours d'introduction aux HTML5 & CSS3
Abel LIFAEFI MBULA
 
Diaporamas-Bases de données.pdf
Diaporamas-Bases de données.pdfDiaporamas-Bases de données.pdf
Diaporamas-Bases de données.pdf
EST-UMI de Meknès
 
introduction au SQL et MySQL
introduction au SQL et MySQLintroduction au SQL et MySQL
introduction au SQL et MySQL
Abdoulaye Dieng
 
Bases de données réparties par la pratique
Bases de données réparties par la pratiqueBases de données réparties par la pratique
Bases de données réparties par la pratique
Abdelouahed Abdou
 
Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQL
webreaker
 
Introduction aux bases de données
Introduction aux bases de donnéesIntroduction aux bases de données
Introduction aux bases de données
Abdoulaye Dieng
 
Chp2 - Diagramme des Cas d'Utilisation
Chp2 - Diagramme des Cas d'UtilisationChp2 - Diagramme des Cas d'Utilisation
Chp2 - Diagramme des Cas d'Utilisation
Lilia Sfaxi
 
Chp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionChp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de Conception
Lilia Sfaxi
 
Les Base de Données NOSQL
Les Base de Données NOSQLLes Base de Données NOSQL
Les Base de Données NOSQL
kamar MEDDAH
 
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliothequeEcole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Mehdi Hamime
 
Dba oracle-v1
Dba oracle-v1Dba oracle-v1
Dba oracle-v1
infcom
 
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Mehdi Hamime
 
Cours Base de données relationnelles
Cours Base de données relationnellesCours Base de données relationnelles
Cours Base de données relationnelles
Aymen Kasmi
 
Cours complet Base de donne Bac
Cours complet Base de donne Bac Cours complet Base de donne Bac
Cours complet Base de donne Bac
Amri Ossama
 
BigData_Chp4: NOSQL
BigData_Chp4: NOSQLBigData_Chp4: NOSQL
BigData_Chp4: NOSQL
Lilia Sfaxi
 
Cours d'introduction aux HTML5 & CSS3
Cours d'introduction aux HTML5 & CSS3Cours d'introduction aux HTML5 & CSS3
Cours d'introduction aux HTML5 & CSS3
Abel LIFAEFI MBULA
 
Diaporamas-Bases de données.pdf
Diaporamas-Bases de données.pdfDiaporamas-Bases de données.pdf
Diaporamas-Bases de données.pdf
EST-UMI de Meknès
 

Similaire à Presentation sql (20)

Bases_donnees_SQL cours L3 SPI 24 25.pptx
Bases_donnees_SQL cours L3 SPI 24 25.pptxBases_donnees_SQL cours L3 SPI 24 25.pptx
Bases_donnees_SQL cours L3 SPI 24 25.pptx
lucas91g
 
presentationatelierphpprt2-140314143938-phpapp02.pdf
presentationatelierphpprt2-140314143938-phpapp02.pdfpresentationatelierphpprt2-140314143938-phpapp02.pdf
presentationatelierphpprt2-140314143938-phpapp02.pdf
RihabBENLAMINE
 
La 2ème partie de la présentation PHP
La 2ème partie de la présentation PHPLa 2ème partie de la présentation PHP
La 2ème partie de la présentation PHP
Club Scientifique de l'ESI - CSE
 
Support_Cours_SQL.ppt
Support_Cours_SQL.pptSupport_Cours_SQL.ppt
Support_Cours_SQL.ppt
SiwarAbbes1
 
Administration des bases de données Licence 2
Administration des bases de données Licence 2Administration des bases de données Licence 2
Administration des bases de données Licence 2
etsdigitol
 
Chapitre5.pdf
Chapitre5.pdfChapitre5.pdf
Chapitre5.pdf
Moez Moezm
 
SQL.pdf
SQL.pdfSQL.pdf
SQL.pdf
Jaouad Assabbour
 
cours-sql-sh-.pdf
cours-sql-sh-.pdfcours-sql-sh-.pdf
cours-sql-sh-.pdf
RazanBenBouChaib
 
Cours sql-sh-
Cours sql-sh-Cours sql-sh-
Cours sql-sh-
Mohamed Lemine
 
Les03.ppt
Les03.pptLes03.ppt
Les03.ppt
zidane39
 
GSI_Chap4-bts-requêtesSQL
GSI_Chap4-bts-requêtesSQLGSI_Chap4-bts-requêtesSQL
GSI_Chap4-bts-requêtesSQL
ecogestionblog
 
Cours_1_MySQLen c++ trés interessant.pdf
Cours_1_MySQLen c++ trés interessant.pdfCours_1_MySQLen c++ trés interessant.pdf
Cours_1_MySQLen c++ trés interessant.pdf
dioufseynabou2708
 
downloadfile-101.pptx réseau local installation
downloadfile-101.pptx réseau local installationdownloadfile-101.pptx réseau local installation
downloadfile-101.pptx réseau local installation
BensadiSamir
 
1425583156389.pptx
1425583156389.pptx1425583156389.pptx
1425583156389.pptx
tirike6016
 
Les commandes sql
Les commandes sqlLes commandes sql
Les commandes sql
Hanfi Akram
 
Pl/sql - interaction avec la base de données & structures de contrôle
Pl/sql  - interaction avec la base de données & structures de contrôlePl/sql  - interaction avec la base de données & structures de contrôle
Pl/sql - interaction avec la base de données & structures de contrôle
Abdelouahed Abdou
 
Bases_donnees_SQL cours L3 SPI 24 25.pptx
Bases_donnees_SQL cours L3 SPI 24 25.pptxBases_donnees_SQL cours L3 SPI 24 25.pptx
Bases_donnees_SQL cours L3 SPI 24 25.pptx
lucas91g
 
presentationatelierphpprt2-140314143938-phpapp02.pdf
presentationatelierphpprt2-140314143938-phpapp02.pdfpresentationatelierphpprt2-140314143938-phpapp02.pdf
presentationatelierphpprt2-140314143938-phpapp02.pdf
RihabBENLAMINE
 
Support_Cours_SQL.ppt
Support_Cours_SQL.pptSupport_Cours_SQL.ppt
Support_Cours_SQL.ppt
SiwarAbbes1
 
Administration des bases de données Licence 2
Administration des bases de données Licence 2Administration des bases de données Licence 2
Administration des bases de données Licence 2
etsdigitol
 
GSI_Chap4-bts-requêtesSQL
GSI_Chap4-bts-requêtesSQLGSI_Chap4-bts-requêtesSQL
GSI_Chap4-bts-requêtesSQL
ecogestionblog
 
Cours_1_MySQLen c++ trés interessant.pdf
Cours_1_MySQLen c++ trés interessant.pdfCours_1_MySQLen c++ trés interessant.pdf
Cours_1_MySQLen c++ trés interessant.pdf
dioufseynabou2708
 
downloadfile-101.pptx réseau local installation
downloadfile-101.pptx réseau local installationdownloadfile-101.pptx réseau local installation
downloadfile-101.pptx réseau local installation
BensadiSamir
 
1425583156389.pptx
1425583156389.pptx1425583156389.pptx
1425583156389.pptx
tirike6016
 
Les commandes sql
Les commandes sqlLes commandes sql
Les commandes sql
Hanfi Akram
 
Pl/sql - interaction avec la base de données & structures de contrôle
Pl/sql  - interaction avec la base de données & structures de contrôlePl/sql  - interaction avec la base de données & structures de contrôle
Pl/sql - interaction avec la base de données & structures de contrôle
Abdelouahed Abdou
 

Dernier (20)

🎤 Grand oral - Bac 2025 - ✍️ Exemples rédigés en 🌍 HGGSP - Apprentissage par ...
🎤 Grand oral - Bac 2025 - ✍️ Exemples rédigés en 🌍 HGGSP - Apprentissage par ...🎤 Grand oral - Bac 2025 - ✍️ Exemples rédigés en 🌍 HGGSP - Apprentissage par ...
🎤 Grand oral - Bac 2025 - ✍️ Exemples rédigés en 🌍 HGGSP - Apprentissage par ...
Miguel Delamontagne
 
🎤 Grand oral - Bac 2025 - ✍️ Exemples rédigés en 📈 SES - Anticipation des int...
🎤 Grand oral - Bac 2025 - ✍️ Exemples rédigés en 📈 SES - Anticipation des int...🎤 Grand oral - Bac 2025 - ✍️ Exemples rédigés en 📈 SES - Anticipation des int...
🎤 Grand oral - Bac 2025 - ✍️ Exemples rédigés en 📈 SES - Anticipation des int...
Miguel Delamontagne
 
10_PCI_Tunisie_________________________.pptx
10_PCI_Tunisie_________________________.pptx10_PCI_Tunisie_________________________.pptx
10_PCI_Tunisie_________________________.pptx
MouhamedLamineMbaye
 
Ficha Passé Composé_imperatif. francês 8º anopdf
Ficha  Passé Composé_imperatif. francês 8º anopdfFicha  Passé Composé_imperatif. francês 8º anopdf
Ficha Passé Composé_imperatif. francês 8º anopdf
Adelaide da Cruz
 
Séraphine de Senlis.pptx Peintre femme française
Séraphine de Senlis.pptx   Peintre femme françaiseSéraphine de Senlis.pptx   Peintre femme française
Séraphine de Senlis.pptx Peintre femme française
Txaruka
 
2024 - 01 - 21 Michel Sardou - Les lacs du Connemara.pptx
2024 - 01 - 21 Michel Sardou - Les lacs du Connemara.pptx2024 - 01 - 21 Michel Sardou - Les lacs du Connemara.pptx
2024 - 01 - 21 Michel Sardou - Les lacs du Connemara.pptx
isabeauvercaigne
 
Surveillance du patient.pptx AU COURS DES SOINS
Surveillance du patient.pptx AU COURS DES SOINSSurveillance du patient.pptx AU COURS DES SOINS
Surveillance du patient.pptx AU COURS DES SOINS
Hossamnaim1
 
Test Bank for Project Management The Managerial Process, 5th Edition: Larson
Test Bank for Project Management The Managerial Process, 5th Edition: LarsonTest Bank for Project Management The Managerial Process, 5th Edition: Larson
Test Bank for Project Management The Managerial Process, 5th Edition: Larson
vorletgagani
 
Test Bank for E-Commerce 2019 Business, Technology and Society 15th by Laudon
Test Bank for E-Commerce 2019 Business, Technology and Society 15th by LaudonTest Bank for E-Commerce 2019 Business, Technology and Society 15th by Laudon
Test Bank for E-Commerce 2019 Business, Technology and Society 15th by Laudon
ersinakhs
 
Discovering Computers 2014 1st Edition Vermaat Solutions Manual
Discovering Computers 2014 1st Edition Vermaat Solutions ManualDiscovering Computers 2014 1st Edition Vermaat Solutions Manual
Discovering Computers 2014 1st Edition Vermaat Solutions Manual
ndaanalamii
 
Présentation Présentation Présentation Présentation Présentation Prése...
Présentation Présentation  Présentation Présentation Présentation Prése...Présentation Présentation  Présentation Présentation Présentation Prése...
Présentation Présentation Présentation Présentation Présentation Prése...
owamichel15
 
Systemic Leadership Learning Leadership Development in the Era of Complexity ...
Systemic Leadership Learning Leadership Development in the Era of Complexity ...Systemic Leadership Learning Leadership Development in the Era of Complexity ...
Systemic Leadership Learning Leadership Development in the Era of Complexity ...
luceygrilla
 
Georges Mathieu.pptx Peintre français
Georges Mathieu.pptx   Peintre   françaisGeorges Mathieu.pptx   Peintre   français
Georges Mathieu.pptx Peintre français
Txaruka
 
Test Bank for Fundamentals of Human Resource Management 8th by Noe
Test Bank for Fundamentals of Human Resource Management 8th by NoeTest Bank for Fundamentals of Human Resource Management 8th by Noe
Test Bank for Fundamentals of Human Resource Management 8th by Noe
barcansukram59
 
Introduction to Criminal Justice 14th Edition Siegel Solutions Manual
Introduction to Criminal Justice 14th Edition Siegel Solutions ManualIntroduction to Criminal Justice 14th Edition Siegel Solutions Manual
Introduction to Criminal Justice 14th Edition Siegel Solutions Manual
touqimangwi
 
MATH S4.pptx LES STRATEGIES DE FORMATION
MATH S4.pptx  LES STRATEGIES  DE FORMATIONMATH S4.pptx  LES STRATEGIES  DE FORMATION
MATH S4.pptx LES STRATEGIES DE FORMATION
fatimazahraaouad10
 
vacances en Bretagne..pdf frances trabajo 3 de la eso
vacances en Bretagne..pdf frances trabajo 3 de la esovacances en Bretagne..pdf frances trabajo 3 de la eso
vacances en Bretagne..pdf frances trabajo 3 de la eso
maryemboussida
 
SIB 1 (NN).pptx SOINS INFIRMIER DE BASES
SIB 1 (NN).pptx SOINS INFIRMIER DE BASESSIB 1 (NN).pptx SOINS INFIRMIER DE BASES
SIB 1 (NN).pptx SOINS INFIRMIER DE BASES
Hossamnaim1
 
Cours sur la presentation generale des CMOS.pdf
Cours sur la presentation generale des CMOS.pdfCours sur la presentation generale des CMOS.pdf
Cours sur la presentation generale des CMOS.pdf
5jypspwn84
 
Hazzard’s Geriatric Medicine and Gerontology, Eighth Edition Jeffrey B. Halter
Hazzard’s Geriatric Medicine and Gerontology, Eighth Edition Jeffrey B. HalterHazzard’s Geriatric Medicine and Gerontology, Eighth Edition Jeffrey B. Halter
Hazzard’s Geriatric Medicine and Gerontology, Eighth Edition Jeffrey B. Halter
agapurelnar
 
🎤 Grand oral - Bac 2025 - ✍️ Exemples rédigés en 🌍 HGGSP - Apprentissage par ...
🎤 Grand oral - Bac 2025 - ✍️ Exemples rédigés en 🌍 HGGSP - Apprentissage par ...🎤 Grand oral - Bac 2025 - ✍️ Exemples rédigés en 🌍 HGGSP - Apprentissage par ...
🎤 Grand oral - Bac 2025 - ✍️ Exemples rédigés en 🌍 HGGSP - Apprentissage par ...
Miguel Delamontagne
 
🎤 Grand oral - Bac 2025 - ✍️ Exemples rédigés en 📈 SES - Anticipation des int...
🎤 Grand oral - Bac 2025 - ✍️ Exemples rédigés en 📈 SES - Anticipation des int...🎤 Grand oral - Bac 2025 - ✍️ Exemples rédigés en 📈 SES - Anticipation des int...
🎤 Grand oral - Bac 2025 - ✍️ Exemples rédigés en 📈 SES - Anticipation des int...
Miguel Delamontagne
 
10_PCI_Tunisie_________________________.pptx
10_PCI_Tunisie_________________________.pptx10_PCI_Tunisie_________________________.pptx
10_PCI_Tunisie_________________________.pptx
MouhamedLamineMbaye
 
Ficha Passé Composé_imperatif. francês 8º anopdf
Ficha  Passé Composé_imperatif. francês 8º anopdfFicha  Passé Composé_imperatif. francês 8º anopdf
Ficha Passé Composé_imperatif. francês 8º anopdf
Adelaide da Cruz
 
Séraphine de Senlis.pptx Peintre femme française
Séraphine de Senlis.pptx   Peintre femme françaiseSéraphine de Senlis.pptx   Peintre femme française
Séraphine de Senlis.pptx Peintre femme française
Txaruka
 
2024 - 01 - 21 Michel Sardou - Les lacs du Connemara.pptx
2024 - 01 - 21 Michel Sardou - Les lacs du Connemara.pptx2024 - 01 - 21 Michel Sardou - Les lacs du Connemara.pptx
2024 - 01 - 21 Michel Sardou - Les lacs du Connemara.pptx
isabeauvercaigne
 
Surveillance du patient.pptx AU COURS DES SOINS
Surveillance du patient.pptx AU COURS DES SOINSSurveillance du patient.pptx AU COURS DES SOINS
Surveillance du patient.pptx AU COURS DES SOINS
Hossamnaim1
 
Test Bank for Project Management The Managerial Process, 5th Edition: Larson
Test Bank for Project Management The Managerial Process, 5th Edition: LarsonTest Bank for Project Management The Managerial Process, 5th Edition: Larson
Test Bank for Project Management The Managerial Process, 5th Edition: Larson
vorletgagani
 
Test Bank for E-Commerce 2019 Business, Technology and Society 15th by Laudon
Test Bank for E-Commerce 2019 Business, Technology and Society 15th by LaudonTest Bank for E-Commerce 2019 Business, Technology and Society 15th by Laudon
Test Bank for E-Commerce 2019 Business, Technology and Society 15th by Laudon
ersinakhs
 
Discovering Computers 2014 1st Edition Vermaat Solutions Manual
Discovering Computers 2014 1st Edition Vermaat Solutions ManualDiscovering Computers 2014 1st Edition Vermaat Solutions Manual
Discovering Computers 2014 1st Edition Vermaat Solutions Manual
ndaanalamii
 
Présentation Présentation Présentation Présentation Présentation Prése...
Présentation Présentation  Présentation Présentation Présentation Prése...Présentation Présentation  Présentation Présentation Présentation Prése...
Présentation Présentation Présentation Présentation Présentation Prése...
owamichel15
 
Systemic Leadership Learning Leadership Development in the Era of Complexity ...
Systemic Leadership Learning Leadership Development in the Era of Complexity ...Systemic Leadership Learning Leadership Development in the Era of Complexity ...
Systemic Leadership Learning Leadership Development in the Era of Complexity ...
luceygrilla
 
Georges Mathieu.pptx Peintre français
Georges Mathieu.pptx   Peintre   françaisGeorges Mathieu.pptx   Peintre   français
Georges Mathieu.pptx Peintre français
Txaruka
 
Test Bank for Fundamentals of Human Resource Management 8th by Noe
Test Bank for Fundamentals of Human Resource Management 8th by NoeTest Bank for Fundamentals of Human Resource Management 8th by Noe
Test Bank for Fundamentals of Human Resource Management 8th by Noe
barcansukram59
 
Introduction to Criminal Justice 14th Edition Siegel Solutions Manual
Introduction to Criminal Justice 14th Edition Siegel Solutions ManualIntroduction to Criminal Justice 14th Edition Siegel Solutions Manual
Introduction to Criminal Justice 14th Edition Siegel Solutions Manual
touqimangwi
 
MATH S4.pptx LES STRATEGIES DE FORMATION
MATH S4.pptx  LES STRATEGIES  DE FORMATIONMATH S4.pptx  LES STRATEGIES  DE FORMATION
MATH S4.pptx LES STRATEGIES DE FORMATION
fatimazahraaouad10
 
vacances en Bretagne..pdf frances trabajo 3 de la eso
vacances en Bretagne..pdf frances trabajo 3 de la esovacances en Bretagne..pdf frances trabajo 3 de la eso
vacances en Bretagne..pdf frances trabajo 3 de la eso
maryemboussida
 
SIB 1 (NN).pptx SOINS INFIRMIER DE BASES
SIB 1 (NN).pptx SOINS INFIRMIER DE BASESSIB 1 (NN).pptx SOINS INFIRMIER DE BASES
SIB 1 (NN).pptx SOINS INFIRMIER DE BASES
Hossamnaim1
 
Cours sur la presentation generale des CMOS.pdf
Cours sur la presentation generale des CMOS.pdfCours sur la presentation generale des CMOS.pdf
Cours sur la presentation generale des CMOS.pdf
5jypspwn84
 
Hazzard’s Geriatric Medicine and Gerontology, Eighth Edition Jeffrey B. Halter
Hazzard’s Geriatric Medicine and Gerontology, Eighth Edition Jeffrey B. HalterHazzard’s Geriatric Medicine and Gerontology, Eighth Edition Jeffrey B. Halter
Hazzard’s Geriatric Medicine and Gerontology, Eighth Edition Jeffrey B. Halter
agapurelnar
 

Presentation sql

  • 2.  L’utilisation la plus courante de SQL consiste a lire des données issues de la base de données. Cela s’effectue grâce a la commande SELECT, qui retourne des enregistrements dans un tableau de résultat. Cette commande peut sélectionner une ou plusieurs colonnes d’une table. Introduction 2 SELECT * FROM table WHERE condition GROUP BY expression HAVING condition { UNION | INTERSECT | EXCEPT } ORDER BY expression LIMIT count
  • 3. Nous nous proposons d’avoir la base de données «Personne» qui contient la table «Utilisateur » cette table contient des informations sur des utilisateurs possédant un compte dans un site de commerce. Table Utilisateur 3
  • 4. On a aussi la table commande qui contient les informations sur les commandes passés par les utilisateurs. Table Commande 4
  • 5. SQL SELECT Il existe plusieurs commandes qui permettent de mieux gérer les données que l’ont souhaite lire. Voici un petit aperçu des quelques fonctionnalités :  Joindre un autre tableau aux résultats  Filtrer pour ne sélectionner que certains enregistrements  Classer les résultats  Grouper les résultats pour faire uniquement des statistiques 5
  • 7. Expression de projection La projection d’une table en vue de l’obtention d’un ensemble de colonnes de cette table se fait simplement en spécifiant les noms des colonnes désirées. 7 Syntaxe: SELECT ma_colonne FROM nom_du_tableau
  • 8. Si l’ont veut avoir la liste de toutes les villes des utilisateurs, il suffit d’effectuer la requête suivante : SELECT ville FROM utilisateur Exemple: Obtenir une seule colonne 8
  • 9. SQL DISTINCT Pour éviter des redondances dans les résultats il faut simplement ajouter DISTINCT après le mot SELECT. Syntaxe: SELECT DISTINCT ma_colonne FROM nom_du_tableau 9
  • 10. Permet d’attribuer un autre nom a une table dans une requête SQL. Cela peut aider à avoir des noms plus courts, plus simples et plus facilement compréhensibles. Alias sur une colonne: SELECT colonne1 AS c1, colonne2 AS c2 FROM `table` Alias sur une table: SELECT * FROM `nom_table` AS t1 Alias sur une table ou colonne 10
  • 12. “ Expression des restrictions La restriction se fait à travers la commande WHERE qui permet d’extraire les lignes d’une base de données qui respectent une condition. Cela permet d’obtenir uniquement les informations désirées. Syntaxe : SELECT nom_colonnes FROM nom_table WHERE condition 12
  • 13. “ Exemple : Expression des restrictions  Pour obtenir seulement la liste des clients qui habitent a Paris, il faut effectuer la requête suivante : SELECT * FROM utilisateur WHERE ville = 'paris‘ 13
  • 14. “ Opérateurs de comparaisons  Il existe plusieurs operateurs de comparaisons. La liste ci-jointe présente quelques uns des operateurs les plus couramment utilisés. Opérateur Description = Egale <>,!= Pas égale < , > , >= , <= Inférieur , supérieur, supérieur ou égale, inférieur ou égal IN Liste de plusieurs valeurs possibles BETWEEN Valeur comprise dans un intervalle donnée (utile pour les nombres ou dates) LIKE Recherche en spécifiant le début, milieu ou fin d'un mot. IS NULL , IS NOT NULL Valeur est nulle , Valeur n'est pas nulle 14
  • 15. “ Exemple : Expression des restrictions « NOT BETWEEN »  Filtrer entre 2 entiers : Si l’ont souhaite obtenir tous les résultats dont l’identifiant n’est pas situe entre 4 et 10, il faudra alors utiliser la requête suivante : SELECT * FROM utilisateur WHERE id NOT BETWEEN 4 AND 10 15
  • 16. “ Exemple : Expression des restrictions « LIKE » Si on souhaite obtenir la liste des utilisateurs dont leurs prénoms contiennent exactement n’importe quelles deux lettres au début suivit par ‘me’. SELECT * FROM utilisateur WHERE prénom LIKE ‘__me%’ 16
  • 17. “ Tri et présentation des résultats SQL permet de trier les tuples obtenus par la requête selon différents critères grâce à la clause ORDER BY. Les mots clés ASC et DESC permettent de préciser si le tri est croissant ou décroissant . Syntaxe : La syntaxe a utiliser pour utiliser l’operateur Order by est la suivante : SELECT * FROM table order by nom_colonne desc|asc 17
  • 19. Expression des jointures Les jointures en SQL permettent d’associer plusieurs tables dans une même requête. Cela permet d’exploiter la puissance des bases de données relationnelles pour obtenir des résultats qui combinent les données de plusieurs tables de manière efficace. 19
  • 20. Expression des jointures Les jointures se font en spécifiant les tables sur lesquelles la jointure sera faite dans la liste des tables utilisées et en spécifiant la qualification de jointure utilisée. INNER JOIN jointure interne pour retourner les enregistrements quand la condition est vrai dans les 2 tables. CROSS JOIN permet de joindre chaque lignes d’une table avec chaque lignes d’une seconde table.( produit cartésien) LEFT JOIN jointure externe pour retourner tous les enregistrements de la table de gauche même si la condition n’est pas vérifié dans l’autre table. FULL JOIN jointure externe pour retourner les résultats quand la condition est vrai dans au moins une des 2 tables. SELF JOIN permet d’effectuer une jointure d’une table avec elle-même comme si c’était une autre table. NATURAL JOIN jointure naturelle entre 2 tables s’il y a au moins une colonne qui porte le même nom entre les 2 tables SQL UNION JOIN Jointure d’union 20
  • 21. Exemple : Expression des jointures Le résultat d’une jointure naturelle est la création d’un tableau avec autant de lignes qu’il y a de paires correspondant à l’association des colonnes de même nom. Syntaxe : SELECT * FROM table1 NATURAL JOIN table2 21
  • 23. Les fonctions statistiques  SQL offre la possibilité de récupérer des données chiffrées sur les table ou des parties de table .  Il est par exemple possible d’obtenir le nombre des tuples répondant à un critère , la valeur moyenne d’une colonne , la valeur maximale ou minimale et la somme d’une colonne . 23
  • 24. Exemple : Les fonctions statistiques Syntaxe : La syntaxe a utiliser pour utiliser les fonctions statiques est la suivante : SELECT SUM(nom_champ) FROM table 24
  • 25. Les Regroupements : GROUP BY Ils est souvent intéressant de regrouper les données d’une table en sous-tables pour y faire des opérations par groupes . Par exemple compter les commandes par fournisseur . Ceci se fait avec la clause GROUP BY suivie de la colonne à partitionner . 25 Syntaxe : SELECT * FROM table GROUP BY nom_champ
  • 26. Les Regroupements : Having La condition HAVING en SQL est presque similaire à WHERE à la seule différence que HAVING permet de filtrer en utilisant des fonctions telles que SUM(), COUNT(), AVG(), MIN() ou MAX(). 26 Syntaxe : L’utilisation de HAVING s’utilise de la manière suivante : SELECT colonne1, SUM(colonne2) FROM nom_table GROUP BY colonne1 HAVING fonction(colonne2) operateur valeur
  • 27. Exemple : Les Regroupements 27 SELECT id, SUM(prix_total) AS prix_personne FROM commande GROUP BY id HAVING sum(prix_total) > 330;
  • 29. 29 L’obtention des données se fait exclusivement par l’ordre SELECT, La syntaxe minimale de cet ordre est SELECT <nom de la colonne> from <nom de la table>, Comme on a déjà vu que ça peut être enrichie par de très nombreuse clauses permettant notamment d’exprimer plusieurs fonctionnalités. On peut ajouter après WHERE une autre requête sql et cette fonctionnalité est appelée les sous requêtes.
  • 30. 30 Exercice Soit le schéma relationnel de la base de données « pilotes-avions-vols » PILOTE (NumPilote, NomPilote, PrénomPilote, Ville, Salaire) AVION (NumAvion, NomAvion, Capacité, Localisation) VOL (NumVol, NumPilote, NumAvion, VilleDépart, VilleArrivé, HeureDépart, Heurearrivé) Exprimer les rêquetes sql suivantes :  Caractérestiques ( NumVol, VilleDépart, VilleArrivée, HeureDépart, HeureArrivée, NomAvion, NomPilote) du vol numéro 714 Question 1:
  • 31. 31 Correction question 1: SELECT NumVol, VilleDépart, Villearrivé, HeureDépart, HeureArrivée, NomAvion, NomPilote From AVION a, PILOTE p, VOL v WHERE p.NumPilote = v.NumPilote AND a.NumAvion = v.NumAvion AND NumVol=714;
  • 32. 32 QUESTION 2:  Caractérestiques (NumAvion, NomAvion, Capacité, Localisation) des avions localisés dans même ville que le pilote « Ben Saleh »
  • 33. 33 Correction question 2: SELECT NumAvion, NomAvion, Capacité, Localisation From AVION a, PILOTE p WHERE a.localisation = p.ville AND Nompilote = ‘Ben Saleh’;

Notes de l'éditeur

  • #3: Squelette : cette requête imaginaire sert principale d’aide-mémoire pour savoir dans quel ordre sont utilisé chacun des commandes au sein d’une requête SELECT
  • #5: L’utilisateur_id est un clé etranger qui reference à la table utilsateur
  • #9: Si l’on souhaite obtenir toutes les colonnes d’une table le caractère ‘*’ peut être utilisé avantageusement à la place de la liste des noms de colonnes.
  • #10: L’utilisation de la commande SELECT en SQL permet de lire toutes les données d’une ou plusieurs colonnes. Cette commande peut potentiellement afficher des lignes en doubles.
  • #13: La commande WHERE s’utilise en complément a une requête utilisant SELECT. La façon la plus simple de l’utiliser est la suivante :
  • #14: Le language sql est sensible à la casse il faut faire attention au nom des colonnes et des attributs
  • #16: Le Not betwen a le meme role que l’operateur between sauf que elle retourne des valeurs exterieurs de l’intervalle
  • #17: % remplace plusieurs caractéres
  • #18: Desc pour mentionner que c’est à l’ordre descendant l’ordre est par défaut ascendant
  • #22: jointure naturelle entre 2 tables s’il y a au moins une colonne qui porte le même nom entre les 2 tables SQL, d’ailleurs ici on a changé la colonne utilisateur_id dans la table commande en « id » On se propose ici d’afficher les prénoms , date d’achat num facture et le prix d’achat suite à une réduction de 20% ( la requete select supporte les fonction arrithmétiques)
  • #25: 9bal mat9oulou el requete : on se propose ici de déterminer le prix total d’achat par personne d’où additionner les depenses par rapport à l id des utilisateurs. Il est important de noter que les opérations statistiques précédentes ne peuvent pas s’imbriquer . Il est par exemple interdit d’écrire quelque chose comme AVG(SUM(montant)) .
  • #26: A noter : cette commande doit toujours s’utiliser après la commande WHERE et avant la commande HAVING.
  • #27: Cela permet donc de SÉLECTIONNER les colonnes DE la table « nom_table » en GROUPANT les lignes qui ont des valeurs identiques sur la colonne « colonne1″ et que la condition de HAVING soit respectée. Important : HAVING est très souvent utilisé en même temps que GROUP BY bien que ce ne soit pas obligatoire.
  • #28: Cette requette affiche la somme de prix totale qui est supérieur à 330 d’un utilisateur à partir de la table commande et on le regroupant par id
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy