Here's an ugly solution. I don't like using Eval( Parse(....) )
Names Default To Here( 1 );
update_exp = Expr(
dt << Update( With( dt_summary ), _matchy_ )
);
match_exp = Expr( Match Columns() );
For Each( {v, i}, {"DIE", "RU", "NAME", "TEST"},
If( dt_summary << Has Column( v ),
Eval( Parse( "Insert Into( match_exp, Expr( \!"" || v || "\!" = \!"" || v || "\!" ) );" ) )
)
);
Eval( Substitute( update_exp, Expr( _matchy_ ), Name Expr( match_exp ) ) );