Ich habe zwei Tabellen A und B:größten Werte Get nur aus einer Tabelle
A:
id v1
-----
1 12
2 9 (added after edit)
2 11
3 27
3 23
B:
id v2
-----
1 13
3 10
2 10
3 28
Ich mag jede Zeile von B wählen, wo v2 ist von allen v2 am größten, v1 entspricht der ID aus beiden Tabellen. (EDIT: Was ich meine: Zeigen Sie mir jede Zeile von B, die den einzigen Maximalwert für diese ID aus beiden Tabellen enthält).
Das Ergebnis sollte wie folgt aussehen:
id greatest (v1,v2)
--------------------
1 13
3 28
Bisher ich in der Lage bin mit dem größten aus beiden Tabellen zu zeigen:
select distinct a.id, greatest(v1,v2) from a join b on a.id=b.id group by a.id;
was dazu führt:
id greatest (v1,v2)
--------------------
1 13
2 11
3 28
Irgendwelche Ideen, wie man am besten (v1, v2) nur von B zeigt?
So Teil der Kriterien ist, dass v2 größer als v1 sein muss (für die gleiche id) – Strawberry
Ja. Ich werde die Frage bearbeiten, um das klarzustellen. –
Ich verstehe. Sie möchten Zeilen, deren maximaler Wert kleiner oder gleich b ist. – Strawberry