[Galette-discussion] Re: [Galette-discussion] Script d'export

[ Thread Index | Date Index | More lists.galette.eu/users Archives ]




Le 21/01/2020 à 11:49, JLM a écrit :
Bonjour,

Bonne année à tous et surtout à Galette, puisse-t-elle continuer à se bonifier d’année en année et continuer à nous rendre service au quotidien !

Je m’intéresse depuis peu à la personnalisation des scripts d’export. Je parviens à exporter dans un même fichier les données de plusieurs tables grâce à la fonction “inner join”, mais j’ai deux problèmes :

- je n’arrive pas à récupérer une info dans une troisième table qui n’a pas de champ commun avec toutes les tables impliquées dans le script, mais seulement avec une seule. Par exemple, avec le script ci-dessous, en partant de l’id adhérent, je récupère sa cotisation dans la table galette_cotisations, ainsi que son numéro de groupe dans la table galette_groups_members, mais je ne sais pas comment récupérer le nom du groupe qui correspond à ce numéro de groupe, et qui se trouve dans une nouvelle table galette_groups…Il te faut une 3e jointure:
INNER JOIN galette_groups ON (galette_groups_members.id_group=galette_groups.id_group)
et remplacer id_group par group_name dans la liste des champs souhaités

Et si tu veux rendre le résultat un poil plus lisible, tu peux utiliser des aliases:
SELECT nom_adh, prenom_adh, montant_cotis, group_name, date_fin_cotis
FROM galette_adherents AS adherents
INNER JOIN galette_cotisations AS cotisations ON
    (adherents.id_adh=cotisations.id_adh)
INNER JOIN galette_groups_members AS members ON
    (members.id_adh=adherents.id_adh)
INNER JOIN galette_groups AS groups ON
    (members.id_group=groups.id_group)

- ensuite, ce script me permet de récupérer toutes les cotisations des adhérents, or, je ne souhaite exporter que la dernière cotisation en date. Là, j’ai toutes les cotisations cumulées depuis qu’ils ont commencé à adhérer
Une condition de tri décroissante suivie d'une limite devrait correspondre à ton besoin:
ORDER BY date_enreg DESC
LIMIT 1

Non testé, je n'ai ni groupes, ni cotisations dans ma base.

A+
--
Guillaume

--
Galette users discussions

http://galette.eu - http://galette.eu/documentation
http://bugs.galette.eu/projects/galette/

List documentation: https://listengine.tuxfamily.org/lists.galette.eu/users/


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/