So solltest du jeweils den
ersten Wert bekommen, den du dann in alle anderen Datensätze reinpassten musst
SQL-Code:
SELECT v_id, v_nr, v_from
FROM vertrag
WHERE (v_nr, v_id) IN ( SELECT v_nr, MIN( v_id ) FROM vertrag GROUP BY v_nr )
Seit wann geht das denn? Ich meine ein 'IN' mit einem 2-Tupel?
PS: Das könnte so gehen (ungetestet)
SQL-Code:
Update T
set Datum = M.minDatum
from Vertraege T
join (
select v_id, v_datum
from Vertraege v
join (select v_id, min (v_nr) as minNr from Vertraege) m
on v.v_id=m.v_id and v_nr = m.minNr
) s
on T.v_id = s.v_id
Das innerste Select 'm' erstellt für alle v_id die kleineste v_nr (als minNr)
Das wird dann mit den Verträgen verknüpft, um für jede v_id das Datum der kleinsten v_nr zu bekommen (s)
Und das wird dann als Quelle für das Update verwenden
Müsste funzen