Vous n'êtes pas identifié(e).
Pages : 1
Bonjour,
J'ai une table qui peut ressembler à ça :
mois;valeur;
janvier;null;
janvier;2;
janvier;3;
février;2;
février;1;
février;null;
février;null;
février;1;
je voudrais avoir par mois le % de renseigné soit :
janvier;66;
février;50;
mais je n'arrive pas à faire ma requête; j'imagine qu'il faut passer par des requêtes imbriquées.....
merci d'avance
Hors ligne
Bonjour,
vous pouvez faire une requête du genre :
SELECT mois,round(nb::numeric/count(*)*100,2)
FROM table
JOIN (
SELECT mois,count(*) as nb
FROM table
WHERE valeur is not null
GROUP BY mois
) sql using (mois )
GROUP BY mois,nb
Julien.
https://rjuju.github.io/
Hors ligne
Il y a plus simple, à moins qu'un truc ne m'ait échappé
SELECT mois, count(valeur)*100/count(*) from "table" group by mois;
Marc.
Hors ligne
Oula oui je me suis vraiment compliqué la vie.
C'est plus simple et surtout beaucoup moins couteux.
Julien.
https://rjuju.github.io/
Hors ligne
Merci bien, comme d'habitude, efficace!
j'ai opté pour la solution n°2
Hors ligne
Pages : 1