Heim >Datenbank >MySQL-Tutorial >Wie verknüpfe ich eine MySQL-Tabelle nur mit der aktuellsten Zeile in einer verwandten Tabelle?
MySQL: Nur mit der neuesten Zeile verknüpfen
In diesem Szenario haben Sie die Tabellen customer und customer_data, wobei customer_data einen Verlauf von enthält Änderungen für jeden Kunden. Ihr Ziel besteht darin, Kundeninformationen abzurufen und dabei nur die aktuellste Zeile in customer_data zu verknüpfen.
Um dies zu erreichen, verwenden Sie eine Unterabfrage innerhalb der WHERE-Klausel, um die maximale ID für jeden Kunden in customer_data zu ermitteln. Verknüpfen Sie diese Unterabfrage mit der Kundentabelle mithilfe der LEFT JOIN-Syntax, wie unten gezeigt:
SELECT c.*, FROM customer AS c LEFT JOIN customer_data AS d ON d.customer_id = c.customer_id AND d.ID = ( SELECT MAX(ID) FROM customer_data WHERE customer_id = c.customer_id ) WHERE name LIKE '%Smith%' LIMIT 10, 20;
In dieser Abfrage:
Dieser Ansatz isoliert effektiv die neuesten Einträge für jeden Kunden und fügt sie zur weiteren Verarbeitung der Kundentabelle hinzu.
Das obige ist der detaillierte Inhalt vonWie verknüpfe ich eine MySQL-Tabelle nur mit der aktuellsten Zeile in einer verwandten Tabelle?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!