Aller au contenu principal

Travaux pratiques n°2

  1. Quels pays comptent au moins 5 clients ?
select country, count(*)
from customer
group by country
having count(*) >= 5
order by nombre desc;
  1. Quels artistes possèdent plus de 10 morceaux ?
select a.name,count(t.*)
from artist a
join album m on a.artist_id = m.artist_id
join track t on t.album_id = m.album_id
having count(*) > 10
group by a.artist_id;
  1. Quels albums contiennent plus de 10 morceaux ?
select b.title, count(*) as nombre
from album b
join track t on t.album_id = b.album_id
group by b.album_id
having count(*) > 10
  1. Quels genres contiennent au moins 100 morceaux ?
select g.name, count(*) as nombre
from genre g
join track t on t.genre_id = g.genre_id
group by g.genre_id
having count(*) > 100
  1. Quels clients ont acheté plus de 20 morceaux ?
select c.first_name, c.last_name, sum(l.quantity) as nombre
from customer c
join invoice i on i.customer_id = c.customer_id
join invoice_line l on l.invoice_id = i.invoice_id
group by c.customer_id
having sum(l.quantity) > 20
  1. Quels clients ont dépensé plus de 40 € ?
select c.first_name, c.last_name, sum(i.total) as depense
from customer c
join invoice i on i.customer_id = c.customer_id
group by c.customer_id
having sum(i.total) > 40
order by depense desc;
  1. Vérifier que le total des factures est égal à la somme des lignes (quantity * unit_price)

  2. Quels pays ont réalisé un chiffre d'affaires supérieur à 50 € ?

  1. Quels artistes ont une durée totale de morceaux supérieure à 1 heure ?
  1. Pour chaque genre, afficher :
  • le nombre de morceaux ;
  • le prix minimum ;
  • le prix maximum ;
  • le prix moyen.
  1. Pour chaque pays, afficher :
  • le nombre de clients ;
  • le montant total dépensé ;
  • la dépense moyenne par client.
  1. Afficher les 5 clients ayant dépensé le plus d'argent, avec :
  • leur nom ;
  • leur prénom ;
  • le nombre de factures ;
  • le montant total dépensé.
  1. Quels clients des USA ont dépensé plus de 40 € ?

  2. les genres que n'écoute pas Isabelle Mercier