Bagaimana untuk mendapatkan tarikh terkini setiap kumpulan model dalam pangkalan data MySQL?
Artikel ini akan memperkenalkan bagaimana untuk mengekstrak tarikh terkini setiap kumpulan model dari pangkalan data MySQL.
Dapatkan tarikh terkini dari data MySQL kumpulan
Anggapkan bahawa jadual pangkalan data mengandungi maklumat terperinci model dan tarikh yang sepadan. Anda boleh menggunakan pertanyaan SQL untuk dilaksanakan.
mari kita pecahkan pertanyaan asal:
Kekurangan tempat menduduki adalah ungkapan bersyarat untuk menentukan tarikh terkini. Satu kaedah ialah menggunakan fungsi :
<code class="language-sql">SELECT model, date FROM doc WHERE date ........????? //接下来是什么? GROUP BY model</code>
max()
Pertanyaan ini mengira nilai tarikh maksimum setiap model, yang secara berkesan menyediakan tarikh terkini setiap kumpulan.
<code class="language-sql">SELECT model, max(date) FROM doc GROUP BY model</code>
semua model yang mengandungi tarikh maksimum:
Pertanyaan ini mengambil semua model yang sepadan dengan tarikh maksimum dalam keseluruhan jadual.
<code class="language-sql"> SELECT model, date FROM doc WHERE date IN (SELECT max(date) FROM doc)</code>
Pertanyaan ini mengambil rekod terperinci setiap model, yang sepadan dengan tarikh terkini dalam kumpulan masing -masing.
<code class="language-sql"> 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)</code>
Untuk set data yang besar, pertanyaan ini menyediakan penyelesaian yang lebih cepat dengan menggunakan klausa lebih. Melalui kaedah di atas, anda boleh memilih pernyataan SQL yang sesuai mengikut keperluan anda untuk mendapatkan tarikh terkini setiap kumpulan model. Untuk versi MySQL 8.0 dan ke atas, kaedah klausa
disyorkan kerana ia lebih cekap apabila memproses set data yang besar.<code class="language-sql"> 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;</code>
Atas ialah kandungan terperinci Bagaimana untuk mendapatkan tarikh terkini untuk setiap kumpulan model di MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!