PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Pilih baris acak untuk setiap grup

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

Jika Anda hanya membutuhkan kolom atribut:

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

Perhatikan bahwa Anda masih perlu memesan dengan id pertama karena merupakan kolom distinct on .

Jika Anda hanya menginginkan atribut yang berbeda:

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Optimalkan kueri maksimum berdasarkan grup

  2. Menginstal permata pg; KESALAHAN:Gagal membuat ekstensi asli permata

  3. PostgreSQL nilai berikutnya dari urutan?

  4. KESALAHAN:string kutipan yang tidak diakhiri pada atau di dekat

  5. Array PHP ke array postgres