2016-05-19 7 views
0

Wenn ich einen Update-Join, der mehrere Übereinstimmungen in einer Gruppe finden kann, aber nur die min (ID) aktualisieren möchte, wie füge ich das zur Abfrage hinzu? So eine Basisversion würde wie folgt aussehen:Update Inner Join mehrere Übereinstimmungen nur am niedrigsten ID

Update Table1 as T1 
Inner Join Table2 as T2 
On T1.Name=T2.Name 
And T1.Value>=T2.MinValue 
And T1.Value<=T2.MaxValue 
Set T1.Flag='1' 

In einigen Gruppen werde ich mehr als einen Treffer bekommen, aber in allen Fällen Ich möchte nur einen einzelnen Datensatz in T1 aktualisiert als ‚1‘. Ich weiß, Min (ID) ist irgendwie beteiligt, aber ich bin mir nicht sicher, wo in dieser Abfrage ich die Min (ID) für die gefundenen Übereinstimmungen angeben kann.

Antwort

0

Ich sah eine sehr ähnliche Frage zu Ihrer hier. Here jemand wollte auch eine Flagge, wenn der Wert ist der niedrigste, durch eine Spalte gruppiert. Und ich denke, das könnte Ihr Problem lösen!