Scheinbar einfache MySQL-Frage, aber ich musste das noch nie machen ..
Ich habe zwei Tabellen, Artikel und Preise mit einer Eins-zu-viele-Beziehung.
%Vor%Wo
%Vor%Was ich bisher habe:
%Vor%Wie gebe ich auch die entsprechenden prices.id für diesen Mindestpreis zurück? Danke!
Dadurch werden mehrere Datensätze für einen Datensatz in Artikeln zurückgegeben, wenn mehrere Preisdatensätze mit dem Mindestpreis vorhanden sind:
%Vor%Neue, funktionierende Antwort, basierend auf dem letzten Beispiel im MySQL 5.0 Referenzhandbuch - 3.6.4. Die Zeilen, die das gruppenweise Maximum einer bestimmten Spalte enthalten :
%Vor% Das LEFT JOIN
funktioniert auf der Basis, dass, wenn prices.price
auf seinem minimalen Wert ist, keine filter.price
mit einem kleineren Wert und die filter
Zeilenwerte NULL sind.
Ursprüngliche falsche Antwort:
%Vor%Tags und Links mysql left-join group-by min greatest-n-per-group