]> gitweb.pimeys.fr Git - scripts-20-100.git/commitdiff
[bde] Affichage de stats sympas/utiles sur la BDD
authorVincent Le Gallic <legallic@crans.org>
Mon, 30 Sep 2013 12:52:40 +0000 (14:52 +0200)
committerVincent Le Gallic <legallic@crans.org>
Mon, 30 Sep 2013 12:52:40 +0000 (14:52 +0200)
bde/stats/consos.sh [new file with mode: 0755]
bde/stats/depense.sh [new file with mode: 0755]
bde/stats/record.sh [new file with mode: 0755]
bde/stats/soldes.sh [new file with mode: 0755]

diff --git a/bde/stats/consos.sh b/bde/stats/consos.sh
new file mode 100755 (executable)
index 0000000..cc130f4
--- /dev/null
@@ -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 (executable)
index 0000000..d429c99
--- /dev/null
@@ -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 (executable)
index 0000000..ba9ed78
--- /dev/null
@@ -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 (executable)
index 0000000..37d9a71
--- /dev/null
@@ -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
+