Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Dapatkan tanggal terbaru dari data MySQL yang dikelompokkan

Apakah Anda mencari tanggal maksimum untuk setiap model?

SELECT model, max(date) FROM doc
GROUP BY model

Jika Anda mencari semua model yang cocok dengan tanggal maksimum seluruh tabel...

SELECT model, date FROM doc
WHERE date IN (SELECT max(date) FROM doc)

[--- Ditambahkan ---]

Bagi mereka yang ingin menampilkan detail dari setiap catatan yang cocok dengan tanggal terbaru dalam setiap grup model (bukan data ringkasan, seperti yang diminta di OP):

SELECT d.model, d.date, d.color, d.etc FROM doc d
WHERE d.date IN (SELECT max(d2.date) FROM doc d2 WHERE d2.model=d.model)

MySQL 8.0 dan yang lebih baru mendukung OVER klausa, menghasilkan hasil yang sama sedikit lebih cepat untuk kumpulan data yang lebih besar.

SELECT model, date, color, etc FROM (SELECT model, date, color, etc, 
  max(date) OVER (PARTITION BY model) max_date FROM doc) predoc 
WHERE date=max_date;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. gunakan mysql SUM() dalam klausa WHERE

  2. Cara menghapus Duplikat di tabel MySQL

  3. Apa perbedaan antara utf8_general_ci dan utf8_unicode_ci?

  4. WEEKDAY() Contoh – MySQL

  5. Akses root MySQL dari semua host