requetes.sql 2.35 KB
Newer Older
Gaetan Carabetta's avatar
Gaetan Carabetta committed
1 2 3 4 5 6 7 8 9 10 11 12 13
/* Information :

    Les variables sont notées de cette façon : $nomVariable

*/

/* Requête pour la quantité de médicament prescrite
  à un animal */
SELECT P.nomMolec as medicament, COUNT(*) as quantite_prescrite
FROM Posologie P
WHERE idAnimal= $idAnimal
GROUP BY P.nomMolec;

Gaetan Carabetta's avatar
Gaetan Carabetta committed
14 15
/* Requete pour le nombre de comprimé prescrit
  à un animal */
Gaetan Carabetta's avatar
Gaetan Carabetta committed
16
SELECT P.nomMolec as medicament, SUM(P.duree*P.nbJourna) as nombre_comprime
Gaetan Carabetta's avatar
Gaetan Carabetta committed
17 18
FROM Posologie P
WHERE idAnimal= $idAnimal
Gaetan Carabetta's avatar
Gaetan Carabetta committed
19
GROUP BY P.nomMolec;
Gaetan Carabetta's avatar
Gaetan Carabetta committed
20 21 22

/***********************************/

Gaetan Carabetta's avatar
Gaetan Carabetta committed
23 24 25 26 27 28
/* Requête pour la quantité de médicament prescrite
  dans la clinique */
SELECT P.nomMolec as medicament, COUNT(*) as quantite_prescrite
FROM Posologie P
GROUP BY P.nomMolec;

Gaetan Carabetta's avatar
Gaetan Carabetta committed
29 30 31 32 33 34 35 36 37 38
/* Requete pour le nombre de comprimé prescrit
  dans la clinique */
SELECT CNT.medicament, sum(CNT.nb) as nombre_comprime
FROM (SELECT P.nomMolec as medicament, COUNT(*)*P.duree*P.nbJourna as nb
  FROM Posologie P
  GROUP BY P.nomMolec, P.duree, P.nbJourna) as CNT
GROUP BY CNT.medicament

/***********************************/

Gaetan Carabetta's avatar
Gaetan Carabetta committed
39 40
/* Requête pour la quantité total d'un médicament
  prescrit dans la clinique */
Gaetan Carabetta's avatar
Gaetan Carabetta committed
41
SELECT P.nomMolec as medicament, COUNT (*) as quantite_medicament
Gaetan Carabetta's avatar
Gaetan Carabetta committed
42
FROM Posologie P
Gaetan Carabetta's avatar
Gaetan Carabetta committed
43 44 45 46 47 48 49 50 51 52 53
WHERE P.nomMolec = $nomMolec
GROUP BY P.nomMolec;

/* Requete pour le nombre de comprimé d'un medicament
  prescrit dans la clinique */
SELECT CNT.medicament, sum(CNT.nb) as nombre_comprime
FROM (SELECT P.nomMolec as medicament, COUNT(*)*P.duree*P.nbJourna as nb
  FROM Posologie P
  WHERE P.nomMolec = $nomMolec
  GROUP BY P.nomMolec, P.duree, P.nbJourna) as CNT
GROUP BY CNT.medicament;
Gaetan Carabetta's avatar
Gaetan Carabetta committed
54

Gaetan Carabetta's avatar
Gaetan Carabetta committed
55
/***********************************/
Gaetan Carabetta's avatar
Gaetan Carabetta committed
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74

/* Requête pour le poids moyen d'une espèce traité
  dans la clinique */
SELECT A.especenom as Espece, AVG(A.poids) as Poids_Moyen
FROM Animal A
WHERE A.especenom = $especeNom
GROUP BY A.especenom;

/* Requête pour la taille moyenne d'une espèce traité
  dans la clinique */
SELECT A.especenom as Espece, AVG(A.taille) as Taille_Moyenne
FROM Animal A
WHERE especenom = $especenom
GROUP BY A.especenom;

/* On peut en déduire des deux requêtes précédentes
  des requêtes pour l'ensemble des espèces
  de la clinique */

Osvaldo Valdivia Salas's avatar
Osvaldo Valdivia Salas committed
75
/* Requete pour le poids moyen et la taille moyenne de toutes les especes
Gaetan Carabetta's avatar
Gaetan Carabetta committed
76
  traitées dans la clinique */
Osvaldo Valdivia Salas's avatar
Osvaldo Valdivia Salas committed
77
SELECT A.especenom as Espece, AVG(a.poids) as Poids_Moyen, AVG(A.taille) as Taille_Moyenne
Gaetan Carabetta's avatar
Gaetan Carabetta committed
78 79 80
FROM Animal A
GROUP BY A.especenom;