Bonjour à tous,


Je suis coincé sur une requête SQL et je n'arrive pas à m'en sortir par moi même. C'est la dernière chose qu'il me manque pour terminer mon projet et j'ai beau chercher une solution, en vain.

Mon projet consiste à gérer des adoptions de chien pour une association. Il y a des membres, des parrains, ... et des adoptants. L'association fait une revue qu'ils envoient à toutes les personnes faisant des dons de plus de 25€ annuellement et aux adoptants. Mon souci est que je n'arrive pas à les regrouper en une requête.
Voici ma requête actuellement :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
SELECT CONCAT( "nom_titre" ) AS "Titre", CONCAT( CONCAT( "nom_personne", ' ' ), "prenom_personne" ) AS "Personne", 
CONCAT( CONCAT( "nom_rue_personne", ' ' ), "num_rue_personne" ) AS "Adresse", CONCAT( CONCAT( "cp_localite", ' ' ), "nom_localite" ) AS "Localité", 
SUM( "ti_personne_paiement"."montant_paiement" ) AS "TotalPaiement" 
FROM "ti_personne_paiement", "t_personne", "ti_personne_chien", "t_localite", "t_titre" 
WHERE "ti_personne_paiement"."xid_personne" = "t_personne"."id_personne" 
AND "ti_personne_chien"."xid_personne" = "t_personne"."id_personne" 
AND "t_personne"."xlocalite_personne" = "t_localite"."id_localite" 
AND "t_personne"."xtitre_personne" = "t_titre"."id_titre" 
AND ( "ti_personne_paiement"."date_paiement" BETWEEN {D '2012-11-28' } AND {D '2013-11-28' }
 OR "ti_personne_chien"."date_adoption" BETWEEN {D '2012-11-28' } AND {D '2013-11-28' } ) 
GROUP BY "t_personne"."id_personne", CONCAT( CONCAT( "nom_personne", ' ' ), "prenom_personne" ) 
HAVING ( ( SUM( "ti_personne_paiement"."montant_paiement" ) >= 25 ) )
J'aimerais que ma requête fasse ressortir tous les membres qui ont payé 25€ ou plus au cours de l'année passée ainsi que les adoptants qui eux n'ont rien payé.


D'avance merci.


Berko