Bonjour,
Mon problème concerne l'affichage de message sur un blog en fonction des groupes auxquels appartient un usager.
voici la requête SQL actuelle :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 /* Powered by General SQL Parser (www.sqlparser.com) */ SELECT TBL_MBLOG_POST.*, TBL_USERS.NOM AS XNOM, TBL_USERS.PRENOM AS XPRENOM, TBL_GROUPEUSER.USERID, TBL_MBLOG_POSTCAT.NOM AS XCAT FROM TBL_MBLOG_POSTCAT INNER JOIN (TBL_USERS INNER JOIN (TBL_MBLOG_POST INNER JOIN (TBL_GROUPES INNER JOIN (TBL_GROUPEUSER INNER JOIN TBL_GROUPEPOST ON TBL_GROUPEUSER.GROUPEID = TBL_GROUPEPOST.GROUPEID) ON TBL_GROUPES.ID = TBL_GROUPEUSER.GROUPEID) ON TBL_MBLOG_POST.ID = TBL_GROUPEPOST.POSTID) ON TBL_USERS.ID = TBL_MBLOG_POST.AUTEURID) ON TBL_MBLOG_POSTCAT.ID = TBL_MBLOG_POST.CATID WHERE TBL_GROUPEUSER.USERID = 3 AND TBL_MBLOG_POST.BLOGID = 1 AND (TBL_MBLOG_POST.STATUT = 20 OR TBL_MBLOG_POST.STATUT = 10) AND (TBL_MBLOG_POST.XDATE BETWEEN #2008-06-09# AND #2008-05-10#) AND (TYPEMSG = 10 OR TYPEMSG = 30) ORDER BY TBL_MBLOG_POST.XDATE DESC, TBL_MBLOG_POST.ID DESC
Un peu de détail sur le problème :
Un message est écrit sur le blog et est dédier à un ou plusieurs groupes d'usagers. Le problème est qu'un message dédier, par exemple, aux groupes A et B est affiché 2 fois pour un utilisateur faisant partie du groupe A et B.
La partie de la requête concernant les groupes sert uniquement à cela.
C'est dans cette table qu'on peut voir que l'usagé #3 est dans le groupe A et B.
Code : Sélectionner tout - Visualiser dans une fenêtre à part WHERE TBL_GROUPEUSER.USERID = 3
Merci
Edit : j'ai trouvé, "Select Distinct"
Partager