This is probably the wrong thing to do but your question is not clear at all.
To change the type of data in SQL you can use
CAST and CONVERT (Transact-SQL) - SQL Server | Microsoft Docs[
^]
Example:
Sample data:
declare @demo1 table (linkingColumn int, datum varchar(20));
insert into @demo1 (linkingColumn, datum) values
(1, '50')
,(2, '150');
declare @demo2 table (linkingColumn int, datum int);
insert into @demo2 (linkingColumn, datum) values
(1,100)
,(2,200);
Using CAST
update t1
set datum = cast(t2.datum as varchar(20))
from @demo1 t1
join @demo2 t2 on t1.linkingColumn = t2.linkingColumn;
select * from @demo1;
update t2
set datum = cast(t1.datum as int)
from @demo1 t1
join @demo2 t2 on t1.linkingColumn = t2.linkingColumn;
select * from @demo2;
Using CONVERT
update t1
set datum = convert(varchar(20), t2.datum )
from @demo1 t1
join @demo2 t2 on t1.linkingColumn = t2.linkingColumn;
update t2
set datum = convert(int, t1.datum)
from @demo1 t1
join @demo2 t2 on t1.linkingColumn = t2.linkingColumn;
NOTE my comment "-- never do this in the real world". You should always store data in the correct column type, numerics in numerical columns, date in date or datetime, etc then you will not suffer from this problem
Also NOTE if you are trying to update a table from another table, then you must have some means of JOINing those tables, otherwise there is no way to control which row gets which value