SQL BDD FACTURES

32
SQL SQL BDD FACTURES BDD FACTURES Jeudi 24/09 Jeudi 24/09 Correction TP du mardi Correction TP du mardi 22/09 22/09

description

SQL BDD FACTURES. Jeudi 24/09 Correction TP du mardi 22/09. Clients du département 76. Nom et le numéro des clients situés à Paris. Nom et numéro des clients situés à Paris dans le 2° et le 10° arrondissements. Client (numéro et nom) de la facture 11. - PowerPoint PPT Presentation

Transcript of SQL BDD FACTURES

Page 1: SQL  BDD FACTURES

SQL SQL BDD FACTURESBDD FACTURES

Jeudi 24/09Jeudi 24/09

Correction TP du mardi 22/09Correction TP du mardi 22/09

Page 2: SQL  BDD FACTURES

Clients du département Clients du département 7676

Page 3: SQL  BDD FACTURES

Nom et le numéro des Nom et le numéro des clients situés à Parisclients situés à Paris

Page 4: SQL  BDD FACTURES

Nom et numéro des clients Nom et numéro des clients situés à Paris dans le 2° et situés à Paris dans le 2° et

le 10° arrondissementsle 10° arrondissements

Page 5: SQL  BDD FACTURES

Client (numéro et nom) de Client (numéro et nom) de la facture 11la facture 11

Page 6: SQL  BDD FACTURES

Liste des produits (ref) de Liste des produits (ref) de la facture 11 trié par la facture 11 trié par

quantité de la plus grande quantité de la plus grande à la plus petiteà la plus petite

SELECT Réf, QtéFactSELECT Réf, QtéFactfrom lignefacturefrom lignefacturewhere N°Fact = 11where N°Fact = 11order by QtéFact desc;order by QtéFact desc;

Page 7: SQL  BDD FACTURES

Liste des produits Liste des produits (ref et design) de la facture (ref et design) de la facture

1111

Page 8: SQL  BDD FACTURES

Liste des produits (ref et Liste des produits (ref et design)) de la facture 11 dont design)) de la facture 11 dont le montant facturé est > à 100 le montant facturé est > à 100

€€

Page 9: SQL  BDD FACTURES

Liste des vélos homme trié Liste des vélos homme trié par designation produitpar designation produit

SELECT Réf, DésignSELECT Réf, Désign

from produitfrom produit

where Désign like "*homme"where Désign like "*homme"

order by Désign;order by Désign;

Page 10: SQL  BDD FACTURES

Liste des vélos countryListe des vélos country

Page 11: SQL  BDD FACTURES

Nb produits de la facture Nb produits de la facture 1111

SELECT count(Réf) as "nb SELECT count(Réf) as "nb produits fact 11"produits fact 11"

from lignefacturefrom lignefacture

where N°Fact = 11;where N°Fact = 11;

Page 12: SQL  BDD FACTURES

Prix moyen des casquesPrix moyen des casques

SELECT avg(PUHT) as "prix moyen SELECT avg(PUHT) as "prix moyen casque"casque"

from produitfrom produit

where Désign like "*casque*";where Désign like "*casque*";

Page 13: SQL  BDD FACTURES

Montant de la facture 11Montant de la facture 11

SELECT sum(PrixFact) as "mt total fact SELECT sum(PrixFact) as "mt total fact 11"11"

from lignefacturefrom lignefacture

where N°Fact = 11;where N°Fact = 11;

Page 14: SQL  BDD FACTURES

Nom et numéro des clients Nom et numéro des clients situés à Paris dans le 2° et le situés à Paris dans le 2° et le 10° arrondi - ssements ; les 10° arrondi - ssements ; les intitulés de colonne doivent intitulés de colonne doivent être « Noms des Clients » et être « Noms des Clients » et « Numéros des Clients ».« Numéros des Clients ».

Page 15: SQL  BDD FACTURES

Nb clients de ParisNb clients de Paris

SELECT count(NomCli) as 'nb cli SELECT count(NomCli) as 'nb cli paris'paris'

from clientfrom client

where CPCli like "75*";where CPCli like "75*";

Page 16: SQL  BDD FACTURES

Nb produits enregistrés Nb produits enregistrés dans la base de donnéesdans la base de données

SELECT count(Réf) as 'nb produits'SELECT count(Réf) as 'nb produits'

from produit;from produit;

Page 17: SQL  BDD FACTURES

Prix moyen des produits de Prix moyen des produits de la facture 11la facture 11

SELECT avg(PrixFact/QtéFact) SELECT avg(PrixFact/QtéFact)

from lignefacturefrom lignefacture

where N°Fact = 11;where N°Fact = 11;

Page 18: SQL  BDD FACTURES

Liste des produits (ref, design, Liste des produits (ref, design, puht) dont le prix est supérieur puht) dont le prix est supérieur

au prix moyen des au prix moyen des ProduitsProduits

SELECT Réf, DésignSELECT Réf, Désign

from produitfrom produit

where PUHT > (select avg(PUHT) where PUHT > (select avg(PUHT) from produit);from produit);

Page 19: SQL  BDD FACTURES

Montant total des factures Montant total des factures du client 12du client 12

select sum(PrixFact) as "mt client "select sum(PrixFact) as "mt client "

from lignefacture, facturefrom lignefacture, facture

where NumCli = 12where NumCli = 12

and lignefacture.N°Fact = and lignefacture.N°Fact = facture.numfact;facture.numfact;

Page 20: SQL  BDD FACTURES

Montant total facturé au Montant total facturé au client 12 en 2008client 12 en 2008

select sum(PrixFact) as "mt client "select sum(PrixFact) as "mt client "

from lignefacture, facturefrom lignefacture, facture

where NumCli = 12where NumCli = 12

and lignefacture.N°Fact = and lignefacture.N°Fact = facture.numfactfacture.numfact

and year(DateFact) = 2008;and year(DateFact) = 2008;

Page 21: SQL  BDD FACTURES

Montant de la dernière Montant de la dernière facture du client xxfacture du client xx

select sum(PrixFact) as "mt client "select sum(PrixFact) as "mt client "

from lignefacture, facturefrom lignefacture, facture

where NumCli = 12where NumCli = 12

and lignefacture.N°Fact = and lignefacture.N°Fact = facture.numfactfacture.numfact

and DateFact = (and DateFact = (

select max(DateFact) from facture where select max(DateFact) from facture where NumCli = 12);NumCli = 12);

Page 22: SQL  BDD FACTURES

Nb de produits par facture Nb de produits par facture (compter le nb de lignes / (compter le nb de lignes /

facture)facture)

select count(Réf) as 'nb prod', N°Factselect count(Réf) as 'nb prod', N°Fact

from lignefacturefrom lignefacture

group by N°Fact;group by N°Fact;

Page 23: SQL  BDD FACTURES

Nb de factures par client trié Nb de factures par client trié par nb fact decroissantpar nb fact decroissant

select count(NumFact) as 'nb fact', select count(NumFact) as 'nb fact', NumCliNumCli

from facturefrom facture

group by NumCligroup by NumCli

order by count(NumFact) ;order by count(NumFact) ;

Page 24: SQL  BDD FACTURES

Liste des clients dont le Liste des clients dont le nombre de factures est nombre de factures est

supérieur à 1supérieur à 1

select count(NumFact) as 'nb fact', select count(NumFact) as 'nb fact', NumCliNumCli

from facturefrom facture

group by NumCligroup by NumCli

having count(NumFact) > 1;having count(NumFact) > 1;

Page 25: SQL  BDD FACTURES

Nb de factures par Nb de factures par produitproduit

select count(N°Fact) as 'nb fact', Réfselect count(N°Fact) as 'nb fact', Réf

from lignefacturefrom lignefacture

group by Réf;group by Réf;

Page 26: SQL  BDD FACTURES

Nb de factures concernant le Nb de factures concernant le produit « 242N»produit « 242N»

select count(N°Fact) as 'nb fact', Réfselect count(N°Fact) as 'nb fact', Réf

from lignefacturefrom lignefacture

group by Réfgroup by Réf

having Réf = "242N";having Réf = "242N";

Page 27: SQL  BDD FACTURES

Nb maxi de quantité facturée Nb maxi de quantité facturée du produit «151T»du produit «151T»

select max(QtéFact) as 'nb maxi qte' select max(QtéFact) as 'nb maxi qte'

from lignefacturefrom lignefacture

where Réf = "151T";where Réf = "151T";

Page 28: SQL  BDD FACTURES

Nb maxi de quantité facturée Nb maxi de quantité facturée du produit «151T» avec la du produit «151T» avec la

designation du produitdesignation du produitselect Désign,QtéFactselect Désign,QtéFact

from produit, lignefacturefrom produit, lignefacture

where produit.Réf = "151T"where produit.Réf = "151T"

and lignefacture.Réf = "151T"and lignefacture.Réf = "151T"

and QtéFact = and QtéFact =

(select max(QtéFact) (select max(QtéFact)

from lignefacturefrom lignefacture

where lignefacture.Réf = "151T");where lignefacture.Réf = "151T");

Page 29: SQL  BDD FACTURES

La facture (numéro et date) La facture (numéro et date) dont l’année est la + anciennedont l’année est la + ancienne

select DateFactselect DateFact

from facturefrom facture

where year(DateFact) = (select where year(DateFact) = (select min(year(DateFact)) from facture)min(year(DateFact)) from facture)

Page 30: SQL  BDD FACTURES

La facture (numéro et date) La facture (numéro et date) dont l’année est la plus dont l’année est la plus

récenterécente

select DateFactselect DateFact

from facturefrom facture

where year(DateFact) = (select where year(DateFact) = (select max(year(DateFact)) from facture)max(year(DateFact)) from facture)

Page 31: SQL  BDD FACTURES

Liste des produits n’ayant Liste des produits n’ayant jamais fait l’objet d’une facture jamais fait l’objet d’une facture

(imbriquée avec not in)(imbriquée avec not in)

select Réfselect Réf

from produitfrom produit

where Réf not in (select Réf from where Réf not in (select Réf from lignefacture);lignefacture);

Page 32: SQL  BDD FACTURES

Nombre de produits n’ayant Nombre de produits n’ayant jamais fait l’objet d’une facture jamais fait l’objet d’une facture

(imbriquée avec not in)(imbriquée avec not in)

select count(Réf)select count(Réf)

from produitfrom produit

where Réf not in (select Réf from where Réf not in (select Réf from lignefacture);lignefacture);