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

BERBEDA dengan dua array_agg (atau satu array_agg dengan Tuple di dalamnya)?

Mirip dengan apa yang saya jawab di pertanyaan sebelumnya Anda , hanya dengan ARRAY of rows seperti yang Anda sarankan dan notasi posisi yang lebih pendek:

SELECT DISTINCT ON (1)
       p, groundtruth, array_agg(ROW(anchor_id, id)) AS ids
FROM (
   SELECT DISTINCT ON (1, 2, 3)
          ps.p, m.groundtruth, m.anchor_id, m.id
   FROM  (SELECT unnest(point_array) AS p) AS ps
   JOIN   measurement m ON ST_DWithin(ps.p, m.groundtruth, distance)
   ORDER  BY 1, 2, 3, random()
   ) x
GROUP  BY 1, 2
ORDER  BY 1, random();

Tapi saya lebih suka versi lain dengan array 2 dimensi.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara alami bergabung dengan dua kueri dengan klausa?

  2. Tidak dapat menemukan pustaka klien PostgreSQL (libpq)

  3. Bagaimana cara membuang data objek besar dari Postgres 9.4, dan kemudian mengimpornya ke Postgres8.x?

  4. kesalahan psycopg, kolom tidak ada

  5. PostgreSQL:memulai urutan di MAX(the_column)+1