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

Gabung di beberapa tabel menggunakan on . yang berbeda

Seperti yang saya nyatakan di komentar:Ini persis sama seperti di Penggabungan dalam menggunakan perbedaan pada . Anda hanya perlu menambahkan satu lagi bergabung dan ORDER BY lainnya grup (cd.created_at DESC )

demo:db<>biola

SELECT DISTINCT ON (ed.emp_id)
    e.emp_id, e.emp_no, e.emp_ref_no, ed.class_no, cd.*
FROM 
    emp_detail ed
JOIN emp e ON e.emp_id = ed.emp_id
JOIN class_detail cd ON ed.class_no = cd.class_no
ORDER BY ed.emp_id, ed.created_at DESC, cd.created_at DESC

Catatan :Saya tidak yakin apa emp_id kolom di class_detail adalah untuk. Tampaknya tidak dirancang dengan baik (ini juga karena selalu 1 dalam contoh Anda.) Anda harus memeriksa apakah Anda benar-benar membutuhkannya.




  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 membuat database dengan flyway?

  2. Tulis ke file dari RAISE NOTICE di postgresql

  3. PostgreSQL - database yang dipulihkan lebih kecil dari aslinya

  4. Pencarian Fuzzy ActiveRecord

  5. Bagaimana Anda menggabungkan dua tabel pada bidang kunci asing menggunakan Django ORM?