Можно так попробовать:
DELETE posts
FROM posts pp
WHERE EXISTS(SELECT 1
FROM posts pm
WHERE pm.authorid = pp.authorid
AND pm.id < pp.id)
По каждому автору authorid удаляем все сообщения для которых можем найти предыдущее сообщение pm.id < pp.id, таким образом по каждому автору останется только первое сообщение.
Порядок следования сообщений равен порядку увеличения posts.id, если это не так, то вставьте свой критерий.