Je ne suis pas sûr de comprendre exactement la question, mais quelque chose comme ça ne fonctionnerait-il pas ?
SELECT s1.wordid, s1.synsetid, s1.sensekey, synsets.definition
, s2.wordid AS matchedWordID, w.* -- Additional info not from question's query
FROM senses AS s1
LEFT JOIN synsets ON s1.synsetid = synsets.synsetid
LEFT JOIN senses AS s2 ON s1.synsetid = s2.synsetid AND s1.wordid <> s2.wordid
LEFT JOIN words AS w ON s2.wordid = w.wordid
WHERE s1.wordid = 79459
;
Remarque :...
est juste un raccourci pour la liste des champs que vous voulez réellement.
Note #2 :Vous pouvez bien sûr vous JOINDRE aux échantillons en utilisant les synsets
référence, mais gardez à l'esprit que les résultats seraient répétés pour chaque paire de mots et chaque échantillon ; et il est possible que certaines paires de mots soient répétées s'ils sont synonymes dans plusieurs sens.