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

Bagaimana cara mengambil data dari beberapa tabel terkait di Postgres?

SELECT ROW_TO_JSON(T)
FROM    (
        SELECT t1.id,
               t1.name,
               array_to_json(array((
                 select case when t2.id is not null then row_to_json(t2) 
                             when t3.id is not null then row_to_json(t3) 
                             when t4.id is not null then row_to_json(t4) 
                        end
                 from   public.relation r 
                 LEFT JOIN public.table1 t2 on r.table2 = t2.id
                 LEFT JOIN public.table1 t3 on r.table3 = t3.id
                 LEFT JOIN public.table1 t4 on r.table4 = t4.id
                 where  r.table1 = t1.id
               ))) related_items
        FROM   public.table1 t1
       ) T



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgres, Kueri Sederhana tidak menggunakan indeks

  2. Cara membuat tabel berdasarkan kueri dan baris yang diambil dari pernyataan pilih

  3. Cara memperbaiki kesalahan Kesalahan:Basis data tidak diinisialisasi dan kata sandi pengguna super tidak ditentukan.

  4. Indeks GIN PostgreSQL pada array uuid

  5. Bagaimana cara mengeksekusi banyak pernyataan dalam satu kueri dengan Rails?