select distinct on (id) id, attribute
from like_this
order by id, random()
Si solo necesita la columna de atributos:
select distinct on (id) attribute
from like_this
order by id, random()
Tenga en cuenta que todavía necesita ordenar por id primero ya que es una columna del distinct on .
Si solo desea los atributos distintos:
select distinct attribute
from (
select distinct on (id) attribute
from like_this
order by id, random()
) s