Myslím, že smyčku nepotřebuješ. Předpokládám, že vaše ID jsou primární klíče a nechtěli jste ve svém příkladu několikrát opakovat klik.
Fungovalo by něco takového?
Upravit podle komentáře Raj A. Tím se aktualizují pouze řádky, kde se změnilo jedno z ostatních polí. Všimněte si, že to neaktualizuje řádky, kde jeden je NULL a druhý není NULL.
MERGE INTO final T
USING ( SELECT id, score, crank, urank FROM test ) S
ON ( S.vid = T.id AND
( S.crank != T.crank OR S.score != T.score OR S.urank != T.urank ))
WHEN MATCHED SET crank = S.crank, score = S.score,
crank = S.crank, urank = S.urank
WHEN NOT MATCHED THEN INSERT
[... not sure what you want to do in this case ...]