Nie jestem pewien, czy dokładnie rozumiem pytanie, ale czy coś takiego nie zadziała?
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
;
Uwaga:...
to tylko skrótowa lista pól, które faktycznie chcesz.
Uwaga#2:Możesz oczywiście DOŁĄCZYĆ do próbek za pomocą synsets
odniesienia, ale pamiętaj, że wyniki zostaną powtórzone dla każdej pary słów i próbki; i możliwe jest, że niektóre pary słów mogą się powtarzać, jeśli są synonimami w wielu znaczeniach.