2016-09-22 4 views
0

Ich habe zwei Tabellen, die-Update eine Tabelle mit den aktuellsten Informationen aus einer anderen Tabelle

T1 (
    DateOfLatestChange, 
    EmployeeID 
) 

T2 (
    EmployeeID, 
    DateOfChange, 
    CommentsOfChange 
) 

T2 häufig aktualisiert werden von einem Mitarbeiter-ID verknüpft sind, und ich möchte T1 die DateOfChange Werte von den letzten Wert halten. Ich versuche, dies in einer gespeicherten Prozedur zu tun, ohne die EmployeeID-Parameter zu übergeben.

Was ist der beste Weg, um diese Tabelle zu aktualisieren?

+0

Wäre es möglich sein, zum Vergleich ein Datum Parameter der gespeicherten Prozedur als Ausgangspunkt zu übergeben? – Sparrow

Antwort

0

könnte so einfach sein wie

UPDATE t1 
SET t1.DateOfChange = t2.DateOfChange 
FROM t1 AS t1 
JOIN (SELECT 
    EmployeeID, max (DateOfChange) DateOfChange 
FROM t2 
GROUP BY EmployeeID) AS t2 
    ON t1.EmployeeID = t2.EmployeeID 
+0

Danke. Das funktioniert gut. –

Verwandte Themen