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

Pilih catatan berdasarkan tanggal terakhir

Di PostgreSQL, untuk mendapatkan baris unik untuk kumpulan kolom yang ditentukan , teknik yang lebih disukai umumnya DISTINCT ON :

SELECT DISTINCT ON ("ID") *
FROM   "Course"
ORDER  BY "ID", "Course Date" DESC NULLS LAST, "Course Name";

Anda mendapatkan tepat satu baris per ID dengan cara ini - yang memiliki "Course Date" terbaru yang diketahui dan "Course Name" pertama (sesuai urutan sortir) jika ada ikatan pada tanggal.

Anda dapat menghapus NULLS LAST jika kolom Anda didefinisikan NOT NULL .

Untuk mendapatkan baris unik per ("ID", "Course Name") :

SELECT DISTINCT ON ("ID", "Course Name") *
FROM   "Course"
ORDER  BY "ID", "Course Name", "Course Date" DESC NULLS LAST;

Detail dalam jawaban terkait ini:



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Temukan rentetan skor sempurna terpanjang per pemain

  2. postgresql date_trunc ke presisi sewenang-wenang?

  3. Cara mengelompokkan hasil berdasarkan jumlah hubungan

  4. Jalankan skrip shell ketika catatan database ditulis ke postgres

  5. Buat pengguna super otomatis dengan setiap Django skema