Allora, ho dato un'occhiata. Intanto rinominerei la tabella 1997 in modo diverso per evitare complicazioni.
La tabella tasso_legale, in corrispondenza del record con id 6, contiene un errore (t_i_decorrenza immagino debba essere 1/1/1998 e non 1997), altrimenti i due intervalli si accavallerebbero.
Da quello che vedo non ti serve un update. Avresti solo dati ridondanti.
Fai una select mettendo in join le due tabelle
codice:
SELECT t1997.*, tasso_legale.tasso
FROM t1997
INNER JOIN tasso_legale
ON t1997.valuta between tasso_legale.t_i_decorrenza and tasso_legale.t_f_decorrenza;