Прежде всего нужно понять, что вы вообще хотите получить от запроса? Сформулируйте, пожалуйста, простыми словами и озвучьте.
В вашем запросе без указания сортировки база данных не может понять, по какому принципу отбирать уникальные post_id. Добавив это поле в ORDER BY, запрос начинает проходить, однако следующие уточнения по поводу позиции отбрасываются. Но это тоже логично! Ведь сортировка уточняется только когда по предыдущему полю идут одинаковые значения, а тут по полю post_id все значения разные (благодаря distinct).
Следовательно, вам нужно использовать вложенные запросы. Сначала находим уникальные посты, а потом внешним селектом сортируем по position.