PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Seleziona una riga casuale per ogni gruppo

select distinct on (id) id, attribute
from like_this
order by id, random()

Se ti serve solo la colonna dell'attributo:

select distinct on (id) attribute
from like_this
order by id, random()

Nota che devi ancora ordinare tramite id prima perché è una colonna del distinct on .

Se vuoi solo gli attributi distinti:

select distinct attribute
from (
    select distinct on (id) attribute
    from like_this
    order by id, random()
) s