From 365751a4e9a6bdafe9aa3ed01e0ed6e4ab16dd3f Mon Sep 17 00:00:00 2001 From: cortylal <alexcortyl@gmail.com> Date: Thu, 19 Jun 2014 00:08:02 +0200 Subject: [PATCH] stats --- class/stats.php | 142 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 142 insertions(+) create mode 100644 class/stats.php diff --git a/class/stats.php b/class/stats.php new file mode 100644 index 0000000..971daea --- /dev/null +++ b/class/stats.php @@ -0,0 +1,142 @@ +<?php + +class Stats +{ + public function factureMoyClient() + { + $bdd = new Db(); + + $requete_prepare = $bdd->db->prepare(" SELECT SUM(t.prix)/COUNT(*) + FROM ( SELECT c.nom, c.prenom, SUM(f.prix_total) AS prix + FROM animal a, client c, facture f + WHERE a.client = c.id + AND f.animal = a.id + GROUP BY c.nom, c.prenom, c.id) t" ); // on prépare notre requête + $requete_prepare->execute(); + + $ligne = $requete_prepare->fetch(PDO::FETCH_ASSOC); + + return $ligne; + } + + public function nbAnimalMoyClient() + { + $bdd = new Db(); + + $requete_prepare = $bdd->db->prepare(" SELECT SUM(t.count)/COUNT(*) + FROM ( SELECT c.nom, c.prenom, COUNT(a.client) AS count + FROM animal a, client c + WHERE a.client = c.id + GROUP BY c.nom, c.prenom, c.id) t" ); // on prépare notre requête + $requete_prepare->execute(); + + $ligne = $requete_prepare->fetch(PDO::FETCH_ASSOC); + + return $ligne; + } + + + public function nbAnimalClient() + { + $bdd = new Db(); + + $requete_prepare = $bdd->db->prepare(" SELECT c.nom, c.prenom, COUNT(a.client) + FROM animal a, client c + WHERE a.client = c.id + GROUP BY c.nom, c.prenom, c.id" ); // on prépare notre requête + $requete_prepare->execute(); + + $ligne = $requete_prepare->fetch(PDO::FETCH_ASSOC); + + return $ligne; + } + + public function top3Client() + { + $bdd = new Db(); + + $requete_prepare = $bdd->db->prepare(" SELECT c.nom, c.prenom, SUM(f.prix_total) AS prix + FROM animal a, client c, facture f + WHERE a.client = c.id + AND f.animal = a.id + GROUP BY c.nom, c.prenom, c.id + LIMIT 3" ); // on prépare notre requête + $requete_prepare->execute(); + + $ligne = $requete_prepare->fetch(PDO::FETCH_ASSOC); + + return $ligne; + } + + public function top3Facture() + { + $bdd = new Db(); + + $requete_prepare = $bdd->db->prepare(" SELECT c.nom, c.prenom, f.prix_total + FROM animal a, client c, facture f + WHERE a.client = c.id + AND f.animal = a.id + ORDER BY f.prix_total DESC + LIMIT 3" ); // on prépare notre requête + $requete_prepare->execute(); + + $ligne = $requete_prepare->fetch(PDO::FETCH_ASSOC); + + return $ligne; + } + + public function top5Veterinaire() + { + $bdd = new Db(); + + $requete_prepare = $bdd->db->prepare(" SELECT e.nom, e.prenom, COUNT(*) AS c + FROM employe e, rdv r + WHERE e.id = r.employe + AND e.is_veterinaire = '1' + GROUP BY e.nom, e.prenom, e.id + ORDER BY c DESC + LIMIT 5" ); // on prépare notre requête + $requete_prepare->execute(); + + $ligne = $requete_prepare->fetch(PDO::FETCH_ASSOC); + + return $ligne; + } + + public function top10Race() + { + $bdd = new Db(); + + $requete_prepare = $bdd->db->prepare(" SELECT r.nom, count(*) + FROM animal a, race r + WHERE a.race = r.id + GROUP BY r.nom, r.id + LIMIT 10" ); // on prépare notre requête + $requete_prepare->execute(); + + $ligne = $requete_prepare->fetch(PDO::FETCH_ASSOC); + + return $ligne; + } + + public function top10Espece() + { + + $bdd = new Db(); + + $requete_prepare = $bdd->db->prepare(" SELECT e.nom, count(*) + FROM animal a, race r, espece e + WHERE a.race = r.id + AND e.id = r.espece + GROUP BY e.nom, e.id + LIMIT 10" ); // on prépare notre requête + $requete_prepare->execute(); + + $ligne = $requete_prepare->fetch(PDO::FETCH_ASSOC); + + return $ligne; + } + + + +} \ No newline at end of file -- GitLab