SELECT x.*, z.*
FROM channelmessage x
LEFT JOIN messagehierarchy y ON x.msgid = y.msgid
LEFT JOIN messagehierarchy z ON x.msgid = z.msgid
WHERE z.referencedcloseness = 1
AND y.referencedmessageid IN
(
select root.messageid
FROM channelmessage root
LEFT JOIN messagehierarchy mh ON root.msgid = mh.msgid
LEFT JOIN messagehierarchy mh2 ON mh2.referencedmessageid = root.messageid
LEFT JOIN channelmessage m ON mh2.msgid = m.msgid
WHERE mh.msgid is null
GROUP BY root.messageid, root.msgid
HAVING m.msgid>1000
)