Вы можете использовать условие EXISTS.
delete from the_table t1
where exists (select *
from the_table t2
where t2.created_at > t1.created_at
and t2.attribute_id = t1.attribute_id);
Это удалит все строки, в которых существует другая строка с тем же атрибутом_идентификатора, имеющая большее значение созданного_атериала (таким образом, сохранится только строка с наибольшим значением created_at
для каждого attribute_id
). Обратите внимание, что если два значения created_at
идентичны, для этого ничего не будет удалено attribute_id
Пример в сети