Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mendapatkan Tarikh Log Masuk Terkini dan Nilai Berkaitan untuk Setiap Pengguna dalam Pangkalan Data?

Bagaimana untuk Mendapatkan Tarikh Log Masuk Terkini dan Nilai Berkaitan untuk Setiap Pengguna dalam Pangkalan Data?

DDD
Lepaskan: 2025-01-15 17:12:45
asal
433 orang telah melayarinya

How to Retrieve the Latest Login Date and Associated Value for Each User in a Database?

Teknik Pangkalan Data untuk Mendapatkan Log Masuk Terkini dan Data Berkaitan

Panduan ini menunjukkan cara untuk mendapatkan semula tarikh log masuk terkini dan nilai yang berkaitan dengan cekap untuk setiap pengguna dalam jadual pangkalan data yang menyimpan cap masa log masuk. Kami akan meneroka dua kaedah yang berkesan:

Kaedah 1: Pendekatan Subkueri

Kaedah klasik ini menggunakan subkueri untuk menentukan tarikh log masuk maksimum bagi setiap pengguna, kemudian menggabungkan hasil ini dengan jadual utama untuk mengekstrak data yang berkaitan:

<code class="language-sql">SELECT t.username, t.date, t.value
FROM MyTable t
INNER JOIN (
    SELECT username, MAX(date) AS MaxDate
    FROM MyTable
    GROUP BY username
) tm ON t.username = tm.username AND t.date = tm.MaxDate;</code>
Salin selepas log masuk

Kaedah 2: Memanfaatkan Fungsi Tetingkap

Untuk pangkalan data yang menyokong fungsi tetingkap, pendekatan ini menawarkan penyelesaian yang lebih cekap dan mantap, menghapuskan kemungkinan entri pendua dan menjamin ketepatan:

<code class="language-sql">SELECT x.username, x.date, x.value
FROM (
    SELECT username, date, value,
        ROW_NUMBER() OVER (PARTITION BY username ORDER BY date DESC) AS _rn
    FROM MyTable
) x
WHERE x._rn = 1;</code>
Salin selepas log masuk

Pertanyaan ini menggunakan fungsi ROW_NUMBER() untuk menetapkan kedudukan unik kepada setiap rekod dalam partition khusus pengguna, disusun mengikut tarikh dalam tertib menurun. Pertanyaan luar kemudian menapis untuk memilih hanya rekod kedudukan teratas (log masuk terbaharu) untuk setiap pengguna. Kaedah ini biasanya lebih disukai kerana prestasi dan kejelasannya.

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Tarikh Log Masuk Terkini dan Nilai Berkaitan untuk Setiap Pengguna dalam Pangkalan Data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan