Hola.
Entonces, y si te he entendido bién, la solución se puede reducir a este código:
Código Delphi
[-]
...
begin
ZQuery1.Close;
ZQuery1.SQL.Clear;
ZQuery1.SQL.Add('UPDATE TABLA_MAYOR MA');
ZQuery1.SQL.Add('SET MA.VALOR = COALESCE( ( SELECT SUM( ME.VALOR )');
ZQuery1.SQL.Add('FROM TABLA_MENOR ME ');
ZQuery1.SQL.Add('WHERE SUBSTRING(ME.ID FROM 1 FOR 6) = SUBSTRING(MA.ID FROM 1 FOR 6) ), 0)');
ZQuery1.ExecSQL;
end;
Saludos