Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mendapatkan Baris Terkini untuk ID Diberikan dalam Jadual SQL?

Bagaimana untuk Mendapatkan Baris Terkini untuk ID Diberikan dalam Jadual SQL?

Mary-Kate Olsen
Lepaskan: 2024-12-29 08:35:11
asal
883 orang telah melayarinya

How to Retrieve the Most Recent Row for a Given ID in a SQL Table?

Mengenal pasti Baris Terkini untuk ID Diberi:

Jadual yang disediakan mengandungi berbilang baris dengan cap masa log masuk yang berbeza-beza untuk nilai id yang berbeza. Objektif di sini ialah untuk mendapatkan semula baris terbaharu, berdasarkan lajur log masuk, untuk nilai id tertentu (id=1).

Menggunakan Agregat MAX() dan KUMPULAN OLEH:

Satu pendekatan untuk mencapai ini ialah dengan menggunakan fungsi agregat MAX() bersama-sama klausa GROUP BY. Pertanyaan berikut mengagregatkan cap masa log masuk maksimum untuk setiap id unik:

SELECT
  id,
  MAX(signin) AS most_recent_signin
FROM tbl
GROUP BY id;
Salin selepas log masuk

Pertanyaan ini menghasilkan jadual dengan dua lajur: id dan most_recent_signin. Lajur most_recent_signin mengandungi cap masa log masuk terbaharu untuk setiap id.

Mendapatkan semula Rekod Lengkap:

Walau bagaimanapun, jika matlamatnya adalah untuk mendapatkan semula rekod lengkap (termasuk semua lajur) untuk baris terbaharu dengan>

SELECT
  tbl.id,
  signin,
  signout
FROM tbl
INNER JOIN (
  SELECT id, MAX(signin) AS maxsign
  FROM tbl
  GROUP BY id
) ms ON tbl.id = ms.id AND signin = maxsign
WHERE tbl.id = 1;
Salin selepas log masuk

Pertanyaan ini melakukan JOIN DALAM antara jadual tbl dan subquery (ms) yang memilih cap masa log masuk maksimum untuk setiap id. Ia kemudian menapis hasil untuk memasukkan hanya baris dengan>

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Baris Terkini untuk ID Diberikan dalam Jadual SQL?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan