From f013558eb6e513204b7e409ca449695c247453e9 Mon Sep 17 00:00:00 2001 From: Vincent Le Gallic Date: Mon, 30 Sep 2013 14:52:40 +0200 Subject: [PATCH] [bde] Affichage de stats sympas/utiles sur la BDD --- bde/stats/consos.sh | 6 ++++++ bde/stats/depense.sh | 5 +++++ bde/stats/record.sh | 6 ++++++ bde/stats/soldes.sh | 11 +++++++++++ 4 files changed, 28 insertions(+) create mode 100755 bde/stats/consos.sh create mode 100755 bde/stats/depense.sh create mode 100755 bde/stats/record.sh create mode 100755 bde/stats/soldes.sh diff --git a/bde/stats/consos.sh b/bde/stats/consos.sh new file mode 100755 index 0000000..cc130f4 --- /dev/null +++ b/bde/stats/consos.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +# Affiche (par ordre décroissant d'occurrence) +# le nombre de chaque conso effectuées par un comte + +psql bde -c "SELECT remarque, SUM(quantite) AS qte FROM transactions WHERE $1 in (emetteur, destinataire) AND valide GROUP BY remarque ORDER BY qte DESC;" diff --git a/bde/stats/depense.sh b/bde/stats/depense.sh new file mode 100755 index 0000000..d429c99 --- /dev/null +++ b/bde/stats/depense.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +# Affiche les dépenses totales d'un compte + +psql bde -c "SELECT sum(montant*quantite) FROM transactions WHERE valide AND emetteur=$1;" diff --git a/bde/stats/record.sh b/bde/stats/record.sh new file mode 100755 index 0000000..ba9ed78 --- /dev/null +++ b/bde/stats/record.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +# Affiche par ordre décroissant les plus grand consommateur d'une conso +# La comparaison est faite avec un ILIKE, on peut donc utiliser % et _ + +psql bde -c "SELECT t.remarque, a.nom, a.prenom, a.pseudo, SUM(t.quantite) AS qte FROM transactions AS t, adherents AS a WHERE remarque ILIKE '$1' AND a.numcbde=t.emetteur AND valide GROUP BY t.remarque, a.nom, a.prenom, a.pseudo ORDER BY qte DESC;" diff --git a/bde/stats/soldes.sh b/bde/stats/soldes.sh new file mode 100755 index 0000000..37d9a71 --- /dev/null +++ b/bde/stats/soldes.sh @@ -0,0 +1,11 @@ +#!/bin/bash + +# Affiches tous les comptes avec leur solde, par ordre décroissant + +if [[ "$1" = "--no-club" ]] +then + psql bde -c "SELECT nom, prenom, pseudo, solde FROM adherents WHERE NOT club ORDER BY solde DESC;" +else + psql bde -c "SELECT nom, prenom, pseudo, solde FROM adherents ORDER BY solde DESC;" +fi + -- 2.39.2