Hádám, že (jak poukázali jiní) v této aktualizaci ve skutečnosti nechcete kartézský text, takže jsem k dotazu přidal „id“, takže budete muset provést nějakou úpravu, ale mohlo by vás to dostat na správnou cestu
;with temp as (
select a.id, SUM(a.pazartesi - b.kota) as newTotal
from [asgdb01].[dbo].[info] a join [asgdb01].[dbo].[kota] b
on a.id = b.id
where a.work_type='in' and a.name='alp' )
update a
set fm = t.newTotal
from [asgdb01].[dbo].[info] a join temp t on a.id = t.id