Garradin

Gestion d'association simple, complète et efficace

Connaître le nombre d’adhésions et de réadhésions

Comment avoir le nombre de personnes adhérentes à l’association par année et voir le nombre de nouveaux membres et de réadhésions sur plusieurs année ?

La procédure

Pour cela, il faut faire une requête sql. Et soit aller dans Configuration, dans lesFonctions avancées, onglet SQL.

Soit, ce qui vous permettra d’enregistrer la requête, passer par la Recherche avancée des Membres sans oublier de cocher la case « Autoriser l’accès à toutes les tables de la base de données ».

Dans cette requête, id est le numéro du tarif qui va servir pour déterminer le nombre d’adhérents. Pour avoir ce numéro, aller dans Activités et cotisations sur l’activité concernée, et relever, dans la barre d’adresse du navigateur, le numéro à la fin

Le numéro de l’activité affiché dans la barre d’adresse du navigateur
Le numéro de l’activité affiché dans la barre d’adresse du navigateur

ici, on a affaire au numéro « 1 ».

S’il ne correspond pas à celui de votre activité, modifier la ligne :

AND s.id = 2

et mettre le numéro que vous avez relevé.

Pour la période, modifier au besoin la ligne :

AND su.expiry_date > '2019-12-31'

En modifiant la date (qui dépend aussi de la période à laquelle vous avez commencé à utiliser Garradin). Appuyer sur Exécuter.

La requête dans les Fonctions avancées
La requête dans les Fonctions avancées
La requête dans le module de recherche des membres
La requête dans le module de recherche des membres

Et voilà le résultat :

Le résultat de la requête
Le résultat de la requête

La requête à copier-coller

SELECT strftime('%Y', su.expiry_date) as 'Année de Cotisation',
SUM(CASE WHEN  cast(strftime('%Y', su.expiry_date) - strftime('%Y', date_inscription) as int) == 0 THEN 0 ELSE 1 END) as 'Anciens adhérents',  
SUM(CASE WHEN  cast(strftime('%Y', su.expiry_date) - strftime('%Y', date_inscription) as int) == 0 THEN 1 ELSE 0 END) as 'Nouveaux adhérents',    
COUNT(m.id) [Total Général]
FROM membres as m, services as s, services_users as su, services_fees as sf
WHERE su.id_user = m.id
 AND sf.id = su.id_fee
AND s.id = 1
AND su.expiry_date > '2020-12-31'
GROUP BY su.expiry_date
ORDER BY su.expiry_date DESC

Vous trouverez sur le wiki de Garradin cette requête plus complète avec trois lignes supplémentaires pour pouvoir déterminer la répartition géographique des adhérents.

Aller plus loin

Mis à jour le mercredi 13 juillet 2022