Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

demande d'aide pour une requete - recherche sur forum

2 réponses
Avatar
Marc Collin
salut

j'ai donc une table membre, une table section, une table message, une
table reponse

chaque réponse correspond à un message...

je veux chercher les messages et reponse correspondant à XZombi

si un message a XZombi et plusieurs réponse qui lui sont lié en ont
aussi... je veux affiché le message une fois...

il est possible que XZombi soit seulement dans une réponse.. je sort le
message lui étant associé

j'ai des doutes qu'on puisse faire ça en une requete...

j'utilise mysql

j'ai un message ayant XZombi et qui possède 2 réponse qui a XZombi
dedans... le numéro de ce message est 1

j'ai un autre message ayant XZombi son numéro est 33

donc il devrait affiche que deux message...

dans le message 1, il y a 7 réponse


j'ai concocté cette requete

SELECT msg.mes_nomessage, mes_titre, mem_nomusager
FROM message msg
INNER JOIN membre m ON m.mem_nomembre = msg.mem_nomembre
INNER JOIN section s ON s.sec_nosection = msg.sec_nosection
INNER JOIN reponse rep ON rep.mes_nomessage = msg.mes_nomessage
WHERE s.sec_nosection = 1 AND
MATCH (mes_message) AGAINST ("XZombi") or
MATCH (rep_reponse) AGAINST ("XZombi")

cette requete ne donne bien sur pas le résultat escompté

j'obtient 7 fois le message 1

est-t'il possible de faire ça en 1 requête... ou je vais être obligé de
séparer ça...

des suggestions?

merci
--
La boîte à prog http://www.laboiteaprog.com

2 réponses

Avatar
Igor Racic
Est-ce que tu peux donner un exemple de données et result que tu veux
obtenir ?
C'est plus facile à suivre...

Igor


Marc Collin wrote:
salut

j'ai donc une table membre, une table section, une table message, une
table reponse

chaque réponse correspond à un message...

je veux chercher les messages et reponse correspondant à XZombi

si un message a XZombi et plusieurs réponse qui lui sont lié en ont
aussi... je veux affiché le message une fois...

il est possible que XZombi soit seulement dans une réponse.. je sort le
message lui étant associé

j'ai des doutes qu'on puisse faire ça en une requete...

j'utilise mysql

j'ai un message ayant XZombi et qui possède 2 réponse qui a XZombi
dedans... le numéro de ce message est 1

j'ai un autre message ayant XZombi son numéro est 33

donc il devrait affiche que deux message...

dans le message 1, il y a 7 réponse


j'ai concocté cette requete

SELECT msg.mes_nomessage, mes_titre, mem_nomusager
FROM message msg
INNER JOIN membre m ON m.mem_nomembre = msg.mem_nomembre
INNER JOIN section s ON s.sec_nosection = msg.sec_nosection
INNER JOIN reponse rep ON rep.mes_nomessage = msg.mes_nomessage
WHERE s.sec_nosection = 1 AND
MATCH (mes_message) AGAINST ("XZombi") or
MATCH (rep_reponse) AGAINST ("XZombi")

cette requete ne donne bien sur pas le résultat escompté

j'obtient 7 fois le message 1

est-t'il possible de faire ça en 1 requête... ou je vais être obligé de
séparer ça...

des suggestions?

merci
Avatar
Spontex
Marc Collin wrote:

j'ai concocté cette requete

SELECT msg.mes_nomessage, mes_titre, mem_nomusager
FROM message msg
INNER JOIN membre m ON m.mem_nomembre = msg.mem_nomembre
INNER JOIN section s ON s.sec_nosection = msg.sec_nosection
INNER JOIN reponse rep ON rep.mes_nomessage = msg.mes_nomessage
WHERE s.sec_nosection = 1 AND
MATCH (mes_message) AGAINST ("XZombi") or
MATCH (rep_reponse) AGAINST ("XZombi")

cette requete ne donne bien sur pas le résultat escompté

j'obtient 7 fois le message 1



Salut,
Je dirais que le problème vient du fait que tu distingues "message" et
"réponse", ce qui fait que tu compliques inutilement !
Une réponse est apparemment un message particulier, donc il n'y a pas de
raison de les distinguer, non ?
Sinon, pour ta requête, il faut à mon avis que tu utilises "IN BOOLEAN
MODE" pour que MATCH vale vrai ou faux. Regarde la doc. de MySQL pour cela.
Pour finir, une clause GROUP BY msg.mes_nomessage te permettra de
n'avoir qu'une seule fois les réponses correspondant à un sujet de
discussion donné.

A+

--
Spontex
http://dvdtoile.com