Агрегат может не отображаться в установленном списке оператора UPDATE - программирование
Подтвердить что ты не робот

Агрегат может не отображаться в установленном списке оператора UPDATE

UPDATE [silverdb01].[dbo].[info] 
SET [FM] = SUM(a.[MONDAY] - b.[QUOTA]) 
FROM  [silverdb01].[dbo].[info] a,  [silverdb01].[dbo].[quota] b 
WHERE a.[WORK_TYPE]='IN' AND a.[NAME]='KUTHAY'

При запуске я получаю следующую ошибку:

Совокупность может не отображаться в списке установок оператора UPDATE.

Есть идеи?

4b9b3361

Ответ 1

Я предполагаю, что (как указывали другие) вы действительно не хотите декартовы в этом обновлении, поэтому я добавил "id" к запросу, поэтому вам придется сделать некоторые изменения, но это может привести вас к правильный путь

;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