sql >> Base de Datos >  >> RDS >> PostgreSQL

Seleccione una fila aleatoria para cada grupo

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